2022-04-24 14:46:37 +01:00
|
|
|
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
|
|
|
# yarn lockfile v1
|
|
|
|
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@ampproject/remapping@^2.2.0":
|
|
|
|
version "2.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630"
|
|
|
|
integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@jridgewell/gen-mapping" "^0.3.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@jridgewell/trace-mapping" "^0.3.9"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.21.4":
|
|
|
|
version "7.21.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39"
|
|
|
|
integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
"@babel/highlight" "^7.18.6"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/compat-data@^7.21.5":
|
|
|
|
version "7.21.7"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.7.tgz#61caffb60776e49a57ba61a88f02bedd8714f6bc"
|
|
|
|
integrity sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@babel/core@^7.11.6", "@babel/core@^7.12.3":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.21.8"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.8.tgz#2a8c7f0f53d60100ba4c32470ba0281c92aa9aa4"
|
|
|
|
integrity sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==
|
|
|
|
dependencies:
|
|
|
|
"@ampproject/remapping" "^2.2.0"
|
|
|
|
"@babel/code-frame" "^7.21.4"
|
|
|
|
"@babel/generator" "^7.21.5"
|
|
|
|
"@babel/helper-compilation-targets" "^7.21.5"
|
|
|
|
"@babel/helper-module-transforms" "^7.21.5"
|
|
|
|
"@babel/helpers" "^7.21.5"
|
|
|
|
"@babel/parser" "^7.21.8"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/template" "^7.20.7"
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/traverse" "^7.21.5"
|
|
|
|
"@babel/types" "^7.21.5"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
convert-source-map "^1.7.0"
|
|
|
|
debug "^4.1.0"
|
|
|
|
gensync "^1.0.0-beta.2"
|
|
|
|
json5 "^2.2.2"
|
|
|
|
semver "^6.3.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/generator@^7.21.5", "@babel/generator@^7.7.2":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.5.tgz#c0c0e5449504c7b7de8236d99338c3e2a340745f"
|
|
|
|
integrity sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/types" "^7.21.5"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@jridgewell/gen-mapping" "^0.3.2"
|
2023-05-08 18:24:09 +01:00
|
|
|
"@jridgewell/trace-mapping" "^0.3.17"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
jsesc "^2.5.1"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-compilation-targets@^7.21.5":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz#631e6cc784c7b660417421349aac304c94115366"
|
|
|
|
integrity sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/compat-data" "^7.21.5"
|
|
|
|
"@babel/helper-validator-option" "^7.21.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
browserslist "^4.21.3"
|
|
|
|
lru-cache "^5.1.1"
|
|
|
|
semver "^6.3.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-environment-visitor@^7.21.5":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz#c769afefd41d171836f7cb63e295bedf689d48ba"
|
|
|
|
integrity sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-function-name@^7.21.0":
|
|
|
|
version "7.21.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4"
|
|
|
|
integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/template" "^7.20.7"
|
|
|
|
"@babel/types" "^7.21.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/helper-hoist-variables@^7.18.6":
|
|
|
|
version "7.18.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678"
|
|
|
|
integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==
|
|
|
|
dependencies:
|
|
|
|
"@babel/types" "^7.18.6"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-module-imports@^7.21.4":
|
|
|
|
version "7.21.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz#ac88b2f76093637489e718a90cec6cf8a9b029af"
|
|
|
|
integrity sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/types" "^7.21.4"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-module-transforms@^7.21.5":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz#d937c82e9af68d31ab49039136a222b17ac0b420"
|
|
|
|
integrity sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-environment-visitor" "^7.21.5"
|
|
|
|
"@babel/helper-module-imports" "^7.21.4"
|
|
|
|
"@babel/helper-simple-access" "^7.21.5"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/helper-split-export-declaration" "^7.18.6"
|
|
|
|
"@babel/helper-validator-identifier" "^7.19.1"
|
|
|
|
"@babel/template" "^7.20.7"
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/traverse" "^7.21.5"
|
|
|
|
"@babel/types" "^7.21.5"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz#345f2377d05a720a4e5ecfa39cbf4474a4daed56"
|
|
|
|
integrity sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-simple-access@^7.21.5":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz#d697a7971a5c39eac32c7e63c0921c06c8a249ee"
|
|
|
|
integrity sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/types" "^7.21.5"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/helper-split-export-declaration@^7.18.6":
|
|
|
|
version "7.18.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075"
|
|
|
|
integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==
|
|
|
|
dependencies:
|
|
|
|
"@babel/types" "^7.18.6"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-string-parser@^7.21.5":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz#2b3eea65443c6bdc31c22d037c65f6d323b6b2bd"
|
|
|
|
integrity sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1":
|
|
|
|
version "7.19.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2"
|
|
|
|
integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-validator-option@^7.21.0":
|
|
|
|
version "7.21.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180"
|
|
|
|
integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helpers@^7.21.5":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.5.tgz#5bac66e084d7a4d2d9696bdf0175a93f7fb63c08"
|
|
|
|
integrity sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
"@babel/template" "^7.20.7"
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/traverse" "^7.21.5"
|
|
|
|
"@babel/types" "^7.21.5"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/highlight@^7.18.6":
|
|
|
|
version "7.18.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf"
|
|
|
|
integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-validator-identifier" "^7.18.6"
|
|
|
|
chalk "^2.0.0"
|
|
|
|
js-tokens "^4.0.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.21.5", "@babel/parser@^7.21.8":
|
|
|
|
version "7.21.8"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.8.tgz#642af7d0333eab9c0ad70b14ac5e76dbde7bfdf8"
|
|
|
|
integrity sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
"@babel/plugin-syntax-async-generators@^7.8.4":
|
|
|
|
version "7.8.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
|
|
|
|
integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-bigint@^7.8.3":
|
|
|
|
version "7.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea"
|
|
|
|
integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-class-properties@^7.8.3":
|
|
|
|
version "7.12.13"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10"
|
|
|
|
integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.12.13"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-import-meta@^7.8.3":
|
|
|
|
version "7.10.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51"
|
|
|
|
integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.10.4"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-json-strings@^7.8.3":
|
|
|
|
version "7.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a"
|
|
|
|
integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/plugin-syntax-jsx@^7.7.2":
|
2023-05-08 18:33:23 +01:00
|
|
|
version "7.21.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz#f264ed7bf40ffc9ec239edabc17a50c4f5b6fea2"
|
|
|
|
integrity sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@babel/helper-plugin-utils" "^7.20.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
"@babel/plugin-syntax-logical-assignment-operators@^7.8.3":
|
|
|
|
version "7.10.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
|
|
|
|
integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.10.4"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3":
|
|
|
|
version "7.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9"
|
|
|
|
integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-numeric-separator@^7.8.3":
|
|
|
|
version "7.10.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97"
|
|
|
|
integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.10.4"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-object-rest-spread@^7.8.3":
|
|
|
|
version "7.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871"
|
|
|
|
integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-optional-catch-binding@^7.8.3":
|
|
|
|
version "7.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1"
|
|
|
|
integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-optional-chaining@^7.8.3":
|
|
|
|
version "7.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a"
|
|
|
|
integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.8.0"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-top-level-await@^7.8.3":
|
|
|
|
version "7.14.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c"
|
|
|
|
integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.14.5"
|
|
|
|
|
|
|
|
"@babel/plugin-syntax-typescript@^7.7.2":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.21.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.21.4.tgz#2751948e9b7c6d771a8efa59340c15d4a2891ff8"
|
|
|
|
integrity sha512-xz0D39NvhQn4t4RNsHmDnnsaQizIlUkdtYvLs8La1BlfjQ6JEwxkJGeqJMW2tAXx+q6H+WFuUTXNdYVpEya0YA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-plugin-utils" "^7.20.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-22 00:03:07 +01:00
|
|
|
"@babel/runtime@^7.21.0":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.5.tgz#8492dddda9644ae3bda3b45eabe87382caee7200"
|
|
|
|
integrity sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==
|
|
|
|
dependencies:
|
|
|
|
regenerator-runtime "^0.13.11"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/template@^7.20.7", "@babel/template@^7.3.3":
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "7.20.7"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8"
|
|
|
|
integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==
|
|
|
|
dependencies:
|
|
|
|
"@babel/code-frame" "^7.18.6"
|
|
|
|
"@babel/parser" "^7.20.7"
|
|
|
|
"@babel/types" "^7.20.7"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/traverse@^7.21.5", "@babel/traverse@^7.7.2":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.5.tgz#ad22361d352a5154b498299d523cf72998a4b133"
|
|
|
|
integrity sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/code-frame" "^7.21.4"
|
|
|
|
"@babel/generator" "^7.21.5"
|
|
|
|
"@babel/helper-environment-visitor" "^7.21.5"
|
|
|
|
"@babel/helper-function-name" "^7.21.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/helper-hoist-variables" "^7.18.6"
|
|
|
|
"@babel/helper-split-export-declaration" "^7.18.6"
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/parser" "^7.21.5"
|
|
|
|
"@babel/types" "^7.21.5"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
debug "^4.1.0"
|
|
|
|
globals "^11.1.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3":
|
|
|
|
version "7.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.5.tgz#18dfbd47c39d3904d5db3d3dc2cc80bedb60e5b6"
|
|
|
|
integrity sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/helper-string-parser" "^7.21.5"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/helper-validator-identifier" "^7.19.1"
|
|
|
|
to-fast-properties "^2.0.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
"@bcoe/v8-coverage@^0.2.3":
|
|
|
|
version "0.2.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
|
|
|
|
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@discordjs/builders@^1.6.3":
|
|
|
|
version "1.6.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@discordjs/builders/-/builders-1.6.3.tgz#994b4fe57e77b47096f74bb5a1f664870a930a43"
|
|
|
|
integrity sha512-CTCh8NqED3iecTNuiz49mwSsrc2iQb4d0MjMdmS/8pb69Y4IlzJ/DIy/p5GFlgOrFbNO2WzMHkWKQSiJ3VNXaw==
|
2022-09-18 11:57:22 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@discordjs/formatters" "^0.3.1"
|
|
|
|
"@discordjs/util" "^0.3.1"
|
|
|
|
"@sapphire/shapeshift" "^3.8.2"
|
|
|
|
discord-api-types "^0.37.41"
|
2022-09-18 11:57:22 +01:00
|
|
|
fast-deep-equal "^3.1.3"
|
2023-05-08 18:33:23 +01:00
|
|
|
ts-mixer "^6.0.3"
|
|
|
|
tslib "^2.5.0"
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@discordjs/collection@^1.5.1":
|
|
|
|
version "1.5.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@discordjs/collection/-/collection-1.5.1.tgz#bc7ca557838dc29247bf19860426637f103bc383"
|
|
|
|
integrity sha512-aWEc9DCf3TMDe9iaJoOnO2+JVAjeRNuRxPZQA6GVvBf+Z3gqUuWYBy2NWh4+5CLYq5uoc3MOvUQ5H5m8CJBqOA==
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@discordjs/formatters@^0.3.1":
|
|
|
|
version "0.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@discordjs/formatters/-/formatters-0.3.1.tgz#81393cf25e6e3223361061629752ea727475e842"
|
|
|
|
integrity sha512-M7X4IGiSeh4znwcRGcs+49B5tBkNDn4k5bmhxJDAUhRxRHTiFAOTVUNQ6yAKySu5jZTnCbSvTYHW3w0rAzV1MA==
|
|
|
|
dependencies:
|
|
|
|
discord-api-types "^0.37.41"
|
|
|
|
|
|
|
|
"@discordjs/rest@^1.1.0", "@discordjs/rest@^1.7.1":
|
|
|
|
version "1.7.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@discordjs/rest/-/rest-1.7.1.tgz#eeef0e71a37c95fa27962129729b2aa9de8e3752"
|
|
|
|
integrity sha512-Ofa9UqT0U45G/eX86cURQnX7gzOJLG2oC28VhIk/G6IliYgQF7jFByBJEykPSHE4MxPhqCleYvmsrtfKh1nYmQ==
|
|
|
|
dependencies:
|
|
|
|
"@discordjs/collection" "^1.5.1"
|
|
|
|
"@discordjs/util" "^0.3.0"
|
|
|
|
"@sapphire/async-queue" "^1.5.0"
|
|
|
|
"@sapphire/snowflake" "^3.4.2"
|
|
|
|
discord-api-types "^0.37.41"
|
|
|
|
file-type "^18.3.0"
|
|
|
|
tslib "^2.5.0"
|
|
|
|
undici "^5.22.0"
|
|
|
|
|
|
|
|
"@discordjs/util@^0.3.0", "@discordjs/util@^0.3.1":
|
|
|
|
version "0.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@discordjs/util/-/util-0.3.1.tgz#4e8737e1dcff7e9f5eccc3116fb44755b65b1e97"
|
|
|
|
integrity sha512-HxXKYKg7vohx2/OupUN/4Sd02Ev3PBJ5q0gtjdcvXb0ErCva8jNHWfe/v5sU3UKjIB/uxOhc+TDOnhqffj9pRA==
|
|
|
|
|
|
|
|
"@discordjs/ws@^0.8.3":
|
|
|
|
version "0.8.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@discordjs/ws/-/ws-0.8.3.tgz#77db8d563b731a2198c1b40f63b1ef8d230504f7"
|
|
|
|
integrity sha512-hcYtppanjHecbdNyCKQNH2I4RP9UrphDgmRgLYrATEQF1oo4sYSve7ZmGsBEXSzH72MO2tBPdWSThunbxUVk0g==
|
2022-09-18 11:57:22 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@discordjs/collection" "^1.5.1"
|
|
|
|
"@discordjs/rest" "^1.7.1"
|
|
|
|
"@discordjs/util" "^0.3.1"
|
2022-09-18 11:57:22 +01:00
|
|
|
"@sapphire/async-queue" "^1.5.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
"@types/ws" "^8.5.4"
|
|
|
|
"@vladfrangu/async_event_emitter" "^2.2.1"
|
|
|
|
discord-api-types "^0.37.41"
|
|
|
|
tslib "^2.5.0"
|
|
|
|
ws "^8.13.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
"@istanbuljs/load-nyc-config@^1.0.0":
|
|
|
|
version "1.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
|
|
|
|
integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==
|
|
|
|
dependencies:
|
|
|
|
camelcase "^5.3.1"
|
|
|
|
find-up "^4.1.0"
|
|
|
|
get-package-type "^0.1.0"
|
|
|
|
js-yaml "^3.13.1"
|
|
|
|
resolve-from "^5.0.0"
|
|
|
|
|
|
|
|
"@istanbuljs/schema@^0.1.2":
|
|
|
|
version "0.1.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
|
|
|
|
integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/console@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.5.0.tgz#593a6c5c0d3f75689835f1b3b4688c4f8544cb57"
|
|
|
|
integrity sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
chalk "^4.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/core@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.5.0.tgz#76674b96904484e8214614d17261cc491e5f1f03"
|
|
|
|
integrity sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/console" "^29.5.0"
|
|
|
|
"@jest/reporters" "^29.5.0"
|
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/transform" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
ansi-escapes "^4.2.1"
|
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
ci-info "^3.2.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
exit "^0.1.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-changed-files "^29.5.0"
|
|
|
|
jest-config "^29.5.0"
|
|
|
|
jest-haste-map "^29.5.0"
|
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-regex-util "^29.4.3"
|
|
|
|
jest-resolve "^29.5.0"
|
|
|
|
jest-resolve-dependencies "^29.5.0"
|
|
|
|
jest-runner "^29.5.0"
|
|
|
|
jest-runtime "^29.5.0"
|
|
|
|
jest-snapshot "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-validate "^29.5.0"
|
|
|
|
jest-watcher "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
micromatch "^4.0.4"
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
strip-ansi "^6.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/environment@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.5.0.tgz#9152d56317c1fdb1af389c46640ba74ef0bb4c65"
|
|
|
|
integrity sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/fake-timers" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-mock "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/expect-utils@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.5.0.tgz#f74fad6b6e20f924582dc8ecbf2cb800fe43a036"
|
|
|
|
integrity sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-get-type "^29.4.3"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/expect@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.5.0.tgz#80952f5316b23c483fbca4363ce822af79c38fba"
|
|
|
|
integrity sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
expect "^29.5.0"
|
|
|
|
jest-snapshot "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/fake-timers@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.5.0.tgz#d4d09ec3286b3d90c60bdcd66ed28d35f1b4dc2c"
|
|
|
|
integrity sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@sinonjs/fake-timers" "^10.0.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-mock "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/globals@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.5.0.tgz#6166c0bfc374c58268677539d0c181f9c1833298"
|
|
|
|
integrity sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/environment" "^29.5.0"
|
|
|
|
"@jest/expect" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
|
|
|
jest-mock "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/reporters@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.5.0.tgz#985dfd91290cd78ddae4914ba7921bcbabe8ac9b"
|
|
|
|
integrity sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@bcoe/v8-coverage" "^0.2.3"
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/console" "^29.5.0"
|
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/transform" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@jridgewell/trace-mapping" "^0.3.15"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
chalk "^4.0.0"
|
|
|
|
collect-v8-coverage "^1.0.0"
|
|
|
|
exit "^0.1.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
glob "^7.1.3"
|
|
|
|
graceful-fs "^4.2.9"
|
2022-04-24 14:46:37 +01:00
|
|
|
istanbul-lib-coverage "^3.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
istanbul-lib-instrument "^5.1.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
istanbul-lib-report "^3.0.0"
|
|
|
|
istanbul-lib-source-maps "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
istanbul-reports "^3.1.3"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-worker "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
string-length "^4.0.1"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
strip-ansi "^6.0.0"
|
|
|
|
v8-to-istanbul "^9.0.1"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/schemas@^29.4.3":
|
|
|
|
version "29.4.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788"
|
|
|
|
integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
"@sinclair/typebox" "^0.25.16"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/source-map@^29.4.3":
|
|
|
|
version "29.4.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.4.3.tgz#ff8d05cbfff875d4a791ab679b4333df47951d20"
|
|
|
|
integrity sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@jridgewell/trace-mapping" "^0.3.15"
|
2022-04-24 14:46:37 +01:00
|
|
|
callsites "^3.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/test-result@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.5.0.tgz#7c856a6ca84f45cc36926a4e9c6b57f1973f1408"
|
|
|
|
integrity sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/console" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/istanbul-lib-coverage" "^2.0.0"
|
|
|
|
collect-v8-coverage "^1.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/test-sequencer@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz#34d7d82d3081abd523dbddc038a3ddcb9f6d3cc4"
|
|
|
|
integrity sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/test-result" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-haste-map "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
slash "^3.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/transform@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.5.0.tgz#cf9c872d0965f0cbd32f1458aa44a2b1988b00f9"
|
|
|
|
integrity sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/core" "^7.11.6"
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@jridgewell/trace-mapping" "^0.3.15"
|
|
|
|
babel-plugin-istanbul "^6.1.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
convert-source-map "^2.0.0"
|
|
|
|
fast-json-stable-stringify "^2.1.0"
|
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-haste-map "^29.5.0"
|
|
|
|
jest-regex-util "^29.4.3"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
micromatch "^4.0.4"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
pirates "^4.0.4"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
write-file-atomic "^4.0.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types@^29.5.0":
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593"
|
|
|
|
integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/schemas" "^29.4.3"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/istanbul-lib-coverage" "^2.0.0"
|
|
|
|
"@types/istanbul-reports" "^3.0.0"
|
|
|
|
"@types/node" "*"
|
|
|
|
"@types/yargs" "^17.0.8"
|
|
|
|
chalk "^4.0.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2":
|
|
|
|
version "0.3.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098"
|
|
|
|
integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
"@jridgewell/set-array" "^1.0.1"
|
|
|
|
"@jridgewell/sourcemap-codec" "^1.4.10"
|
|
|
|
"@jridgewell/trace-mapping" "^0.3.9"
|
|
|
|
|
|
|
|
"@jridgewell/resolve-uri@3.1.0":
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"
|
|
|
|
integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@jridgewell/set-array@^1.0.1":
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "1.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"
|
|
|
|
integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@jridgewell/sourcemap-codec@1.4.14":
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "1.4.14"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
|
|
|
|
integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@jridgewell/sourcemap-codec@^1.4.10":
|
|
|
|
version "1.4.15"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
|
|
|
|
integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "0.3.18"
|
|
|
|
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6"
|
|
|
|
integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
"@jridgewell/resolve-uri" "3.1.0"
|
|
|
|
"@jridgewell/sourcemap-codec" "1.4.14"
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
"@sapphire/async-queue@^1.5.0":
|
|
|
|
version "1.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sapphire/async-queue/-/async-queue-1.5.0.tgz#2f255a3f186635c4fb5a2381e375d3dfbc5312d8"
|
|
|
|
integrity sha512-JkLdIsP8fPAdh9ZZjrbHWR/+mZj0wvKS5ICibcLrRI1j84UmLMshx5n9QmL8b95d4onJ2xxiyugTgSAX7AalmA==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@sapphire/shapeshift@^3.8.2":
|
|
|
|
version "3.8.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sapphire/shapeshift/-/shapeshift-3.8.2.tgz#f9f25cba74c710b56f8790de76a9642a9635e7db"
|
|
|
|
integrity sha512-NXpnJAsxN3/h9TqQPntOeVWZrpIuucqXI3IWF6tj2fWCoRLCuVK5wx7Dtg7pRrtkYfsMUbDqgKoX26vrC5iYfA==
|
2022-09-18 11:57:22 +01:00
|
|
|
dependencies:
|
|
|
|
fast-deep-equal "^3.1.3"
|
2023-05-08 18:33:23 +01:00
|
|
|
lodash "^4.17.21"
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@sapphire/snowflake@^3.4.2":
|
|
|
|
version "3.4.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sapphire/snowflake/-/snowflake-3.4.2.tgz#365af8e7b57ada924ec8e85383b921280f81d128"
|
|
|
|
integrity sha512-KJwlv5gkGjs1uFV7/xx81n3tqgBwBJvH94n1xDyH3q+JSmtsMeSleJffarEBfG2yAFeJiFA4BnGOK6FFPHc19g==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@sinclair/typebox@^0.25.16":
|
2023-05-08 18:33:23 +01:00
|
|
|
version "0.25.24"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718"
|
|
|
|
integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@sindresorhus/is@4.6.0":
|
2022-04-24 14:46:37 +01:00
|
|
|
version "4.6.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
|
|
|
|
integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@sinonjs/commons@^2.0.0":
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3"
|
|
|
|
integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
type-detect "4.0.8"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@sinonjs/fake-timers@^10.0.2":
|
|
|
|
version "10.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c"
|
|
|
|
integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@sinonjs/commons" "^2.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
"@sqltools/formatter@^1.2.5":
|
|
|
|
version "1.2.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@sqltools/formatter/-/formatter-1.2.5.tgz#3abc203c79b8c3e90fd6c156a0c62d5403520e12"
|
|
|
|
integrity sha512-Uy0+khmZqUrUGm5dmMqVlnvufZRSK0FbYzVgp0UMstm+F5+W2/jnEEQyc9vo1ZR/E5ZI/B1WjjoTqBqwJL6Krw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@szmarczak/http-timer@4.0.6":
|
2022-04-24 14:46:37 +01:00
|
|
|
version "4.0.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807"
|
|
|
|
integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==
|
|
|
|
dependencies:
|
|
|
|
defer-to-connect "^2.0.0"
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
"@tokenizer/token@^0.3.0":
|
|
|
|
version "0.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@tokenizer/token/-/token-0.3.0.tgz#fe98a93fe789247e998c75e74e9c7c63217aa276"
|
|
|
|
integrity sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/babel__core@^7.1.14":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.20.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891"
|
|
|
|
integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@babel/parser" "^7.20.7"
|
|
|
|
"@babel/types" "^7.20.7"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/babel__generator" "*"
|
|
|
|
"@types/babel__template" "*"
|
|
|
|
"@types/babel__traverse" "*"
|
|
|
|
|
|
|
|
"@types/babel__generator@*":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.6.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7"
|
|
|
|
integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@babel/types" "^7.0.0"
|
|
|
|
|
|
|
|
"@types/babel__template@*":
|
|
|
|
version "7.4.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969"
|
|
|
|
integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==
|
|
|
|
dependencies:
|
|
|
|
"@babel/parser" "^7.1.0"
|
|
|
|
"@babel/types" "^7.0.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.18.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.5.tgz#c107216842905afafd3b6e774f6f935da6f5db80"
|
|
|
|
integrity sha512-enCvTL8m/EHS/zIvJno9nE+ndYPh1/oNFzRYRmtUqJICG2VnCSBzMLW5VN2KCQU91f23tsNKR8v7VJJQMatl7Q==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@babel/types" "^7.3.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/graceful-fs@^4.1.3":
|
|
|
|
version "4.1.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae"
|
|
|
|
integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@types/node" "*"
|
|
|
|
|
|
|
|
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "2.0.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44"
|
|
|
|
integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
"@types/istanbul-lib-report@*":
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686"
|
|
|
|
integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==
|
|
|
|
dependencies:
|
|
|
|
"@types/istanbul-lib-coverage" "*"
|
|
|
|
|
|
|
|
"@types/istanbul-reports@^3.0.0":
|
|
|
|
version "3.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff"
|
|
|
|
integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==
|
|
|
|
dependencies:
|
|
|
|
"@types/istanbul-lib-report" "*"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/jest@^29.0.0":
|
2023-05-08 18:33:23 +01:00
|
|
|
version "29.5.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.1.tgz#83c818aa9a87da27d6da85d3378e5a34d2f31a47"
|
|
|
|
integrity sha512-tEuVcHrpaixS36w7hpsfLBLpjtMRJUE09/MHXn923LOVojDwyC14cWcfc0rDs0VEfUyYmt/+iX1kxxp+gZMcaQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
expect "^29.0.0"
|
|
|
|
pretty-format "^29.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
"@types/node@*":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "20.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.1.0.tgz#258805edc37c327cf706e64c6957f241ca4c4c20"
|
|
|
|
integrity sha512-O+z53uwx64xY7D6roOi4+jApDGFg0qn6WHcxe5QeqjMaTezBO/mxdfFXIVAVVyNWKx84OmPB3L8kbVYOTeN34A==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-15 18:24:57 +01:00
|
|
|
"@types/node@^20.0.0":
|
|
|
|
version "20.1.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.1.4.tgz#83f148d2d1f5fe6add4c53358ba00d97fc4cdb71"
|
|
|
|
integrity sha512-At4pvmIOki8yuwLtd7BNHl3CiWNbtclUbNtScGx4OHfBd4/oWoJC8KRCIxXwkdndzhxOsPXihrsOoydxBjlE9Q==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
"@types/prettier@^2.1.5":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "2.7.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz#6c2324641cc4ba050a8c710b2b251b377581fbf0"
|
|
|
|
integrity sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@types/responselike@1.0.0":
|
2022-04-24 14:46:37 +01:00
|
|
|
version "1.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"
|
|
|
|
integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==
|
|
|
|
dependencies:
|
|
|
|
"@types/node" "*"
|
|
|
|
|
|
|
|
"@types/stack-utils@^2.0.0":
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
|
|
|
|
integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==
|
|
|
|
|
2022-12-28 18:52:33 +00:00
|
|
|
"@types/uuid@^9.0.0":
|
2023-05-08 18:33:23 +01:00
|
|
|
version "9.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.1.tgz#98586dc36aee8dacc98cc396dbca8d0429647aa6"
|
|
|
|
integrity sha512-rFT3ak0/2trgvp4yYZo5iKFEPsET7vKydKF+VRCxlQ9bpheehyAJH89dAkaLEq/j/RZXJIqcgsmPJKUP1Z28HA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@types/ws@^8.5.4":
|
|
|
|
version "8.5.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.4.tgz#bb10e36116d6e570dd943735f86c933c1587b8a5"
|
|
|
|
integrity sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@types/node" "*"
|
|
|
|
|
|
|
|
"@types/yargs-parser@*":
|
2023-05-08 18:24:09 +01:00
|
|
|
version "21.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b"
|
|
|
|
integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/yargs@^17.0.8":
|
2023-05-08 18:33:23 +01:00
|
|
|
version "17.0.24"
|
|
|
|
resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.24.tgz#b3ef8d50ad4aa6aecf6ddc97c580a00f5aa11902"
|
|
|
|
integrity sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
"@types/yargs-parser" "*"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
"@vladfrangu/async_event_emitter@^2.2.1":
|
|
|
|
version "2.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/@vladfrangu/async_event_emitter/-/async_event_emitter-2.2.1.tgz#5f44b3095d5edd695a9d12079f81b41826ad7831"
|
|
|
|
integrity sha512-XtUEAS0m6uVddXW+EImGunLiJZzWNWAZQBoQCUneowrYXPQ6y7c0iWEm/wVYyGpTixTIhUfLRSoYCwojL64htA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
ansi-escapes@^4.2.1:
|
|
|
|
version "4.3.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
|
|
|
|
integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
|
|
|
|
dependencies:
|
|
|
|
type-fest "^0.21.3"
|
|
|
|
|
|
|
|
ansi-regex@^5.0.1:
|
|
|
|
version "5.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
|
|
|
|
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
|
|
|
|
|
|
|
|
ansi-styles@^3.2.1:
|
|
|
|
version "3.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
|
|
|
|
integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
|
|
|
|
dependencies:
|
|
|
|
color-convert "^1.9.0"
|
|
|
|
|
|
|
|
ansi-styles@^4.0.0, ansi-styles@^4.1.0:
|
|
|
|
version "4.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
|
|
|
|
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
|
|
|
|
dependencies:
|
|
|
|
color-convert "^2.0.1"
|
|
|
|
|
|
|
|
ansi-styles@^5.0.0:
|
|
|
|
version "5.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
|
|
|
|
integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
|
|
|
|
|
|
|
|
any-promise@^1.0.0:
|
|
|
|
version "1.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
anymatch@^3.0.3:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "3.1.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
|
|
|
|
integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
normalize-path "^3.0.0"
|
|
|
|
picomatch "^2.0.4"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
app-root-path@^3.1.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-3.1.0.tgz#5971a2fc12ba170369a7a1ef018c71e6e47c2e86"
|
|
|
|
integrity sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
argparse@^1.0.7:
|
|
|
|
version "1.0.10"
|
|
|
|
resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
|
|
|
|
integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
|
|
|
|
dependencies:
|
|
|
|
sprintf-js "~1.0.2"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
babel-jest@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.5.0.tgz#3fe3ddb109198e78b1c88f9ebdecd5e4fc2f50a5"
|
|
|
|
integrity sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/transform" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/babel__core" "^7.1.14"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
babel-plugin-istanbul "^6.1.1"
|
2023-05-08 18:33:23 +01:00
|
|
|
babel-preset-jest "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
babel-plugin-istanbul@^6.1.1:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "6.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
|
|
|
|
integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==
|
|
|
|
dependencies:
|
|
|
|
"@babel/helper-plugin-utils" "^7.0.0"
|
|
|
|
"@istanbuljs/load-nyc-config" "^1.0.0"
|
|
|
|
"@istanbuljs/schema" "^0.1.2"
|
|
|
|
istanbul-lib-instrument "^5.0.4"
|
|
|
|
test-exclude "^6.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
babel-plugin-jest-hoist@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz#a97db437936f441ec196990c9738d4b88538618a"
|
|
|
|
integrity sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@babel/template" "^7.3.3"
|
|
|
|
"@babel/types" "^7.3.3"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/babel__core" "^7.1.14"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/babel__traverse" "^7.0.6"
|
|
|
|
|
|
|
|
babel-preset-current-node-syntax@^1.0.0:
|
|
|
|
version "1.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b"
|
|
|
|
integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==
|
|
|
|
dependencies:
|
|
|
|
"@babel/plugin-syntax-async-generators" "^7.8.4"
|
|
|
|
"@babel/plugin-syntax-bigint" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-class-properties" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-import-meta" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-json-strings" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-logical-assignment-operators" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-numeric-separator" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-object-rest-spread" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-optional-chaining" "^7.8.3"
|
|
|
|
"@babel/plugin-syntax-top-level-await" "^7.8.3"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
babel-preset-jest@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz#57bc8cc88097af7ff6a5ab59d1cd29d52a5916e2"
|
|
|
|
integrity sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
babel-plugin-jest-hoist "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
babel-preset-current-node-syntax "^1.0.0"
|
|
|
|
|
|
|
|
balanced-match@^1.0.0:
|
|
|
|
version "1.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
|
|
|
|
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
|
|
|
|
|
|
|
|
base64-js@^1.3.1:
|
|
|
|
version "1.5.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
|
|
|
|
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
|
|
|
|
|
|
|
|
bignumber.js@9.0.0:
|
|
|
|
version "9.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.0.tgz#805880f84a329b5eac6e7cb6f8274b6d82bdf075"
|
|
|
|
integrity sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==
|
|
|
|
|
|
|
|
brace-expansion@^1.1.7:
|
|
|
|
version "1.1.11"
|
|
|
|
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
|
|
|
|
integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
|
|
|
|
dependencies:
|
|
|
|
balanced-match "^1.0.0"
|
|
|
|
concat-map "0.0.1"
|
|
|
|
|
2023-03-20 17:59:28 +00:00
|
|
|
brace-expansion@^2.0.1:
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"
|
|
|
|
integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==
|
|
|
|
dependencies:
|
|
|
|
balanced-match "^1.0.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
braces@^3.0.2:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "3.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
|
|
|
|
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
|
|
|
|
dependencies:
|
|
|
|
fill-range "^7.0.1"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
browserslist@^4.21.3:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "4.21.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7"
|
|
|
|
integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
caniuse-lite "^1.0.30001449"
|
|
|
|
electron-to-chromium "^1.4.284"
|
|
|
|
node-releases "^2.0.8"
|
|
|
|
update-browserslist-db "^1.0.10"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
bs-logger@0.x:
|
|
|
|
version "0.2.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8"
|
|
|
|
integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==
|
|
|
|
dependencies:
|
|
|
|
fast-json-stable-stringify "2.x"
|
|
|
|
|
|
|
|
bser@2.1.1:
|
|
|
|
version "2.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05"
|
|
|
|
integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==
|
|
|
|
dependencies:
|
|
|
|
node-int64 "^0.4.0"
|
|
|
|
|
|
|
|
buffer-from@^1.0.0:
|
|
|
|
version "1.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
|
|
|
|
integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
|
|
|
|
|
|
|
|
buffer@^6.0.3:
|
|
|
|
version "6.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6"
|
|
|
|
integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
|
|
|
|
dependencies:
|
|
|
|
base64-js "^1.3.1"
|
|
|
|
ieee754 "^1.2.1"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
busboy@^1.6.0:
|
|
|
|
version "1.6.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893"
|
|
|
|
integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==
|
|
|
|
dependencies:
|
|
|
|
streamsearch "^1.1.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
cacheable-lookup@6.1.0:
|
|
|
|
version "6.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.1.0.tgz#0330a543471c61faa4e9035db583aad753b36385"
|
|
|
|
integrity sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
cacheable-request@7.0.2:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "7.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz#ea0d0b889364a25854757301ca12b2da77f91d27"
|
|
|
|
integrity sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==
|
|
|
|
dependencies:
|
|
|
|
clone-response "^1.0.2"
|
|
|
|
get-stream "^5.1.0"
|
|
|
|
http-cache-semantics "^4.0.0"
|
|
|
|
keyv "^4.0.0"
|
|
|
|
lowercase-keys "^2.0.0"
|
|
|
|
normalize-url "^6.0.1"
|
|
|
|
responselike "^2.0.0"
|
|
|
|
|
|
|
|
callsites@^3.0.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
|
|
|
|
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
|
|
|
|
|
|
|
|
camelcase@^5.3.1:
|
|
|
|
version "5.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
|
|
|
|
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
|
|
|
|
|
|
|
|
camelcase@^6.2.0:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "6.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
|
|
|
|
integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
caniuse-lite@^1.0.30001449:
|
|
|
|
version "1.0.30001486"
|
|
|
|
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz#56a08885228edf62cbe1ac8980f2b5dae159997e"
|
|
|
|
integrity sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk@^2.0.0:
|
|
|
|
version "2.4.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
|
|
|
|
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
|
|
|
|
dependencies:
|
|
|
|
ansi-styles "^3.2.1"
|
|
|
|
escape-string-regexp "^1.0.5"
|
|
|
|
supports-color "^5.3.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
chalk@^4.0.0, chalk@^4.1.2:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "4.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
|
|
|
|
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
|
|
|
|
dependencies:
|
|
|
|
ansi-styles "^4.1.0"
|
|
|
|
supports-color "^7.1.0"
|
|
|
|
|
|
|
|
char-regex@^1.0.2:
|
|
|
|
version "1.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf"
|
|
|
|
integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
|
|
|
|
|
|
|
|
ci-info@^3.2.0:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "3.8.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91"
|
|
|
|
integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
cjs-module-lexer@^1.0.0:
|
|
|
|
version "1.2.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40"
|
|
|
|
integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==
|
|
|
|
|
|
|
|
cli-highlight@^2.1.11:
|
|
|
|
version "2.1.11"
|
|
|
|
resolved "https://registry.yarnpkg.com/cli-highlight/-/cli-highlight-2.1.11.tgz#49736fa452f0aaf4fae580e30acb26828d2dc1bf"
|
|
|
|
integrity sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==
|
|
|
|
dependencies:
|
|
|
|
chalk "^4.0.0"
|
|
|
|
highlight.js "^10.7.1"
|
|
|
|
mz "^2.4.0"
|
|
|
|
parse5 "^5.1.1"
|
|
|
|
parse5-htmlparser2-tree-adapter "^6.0.0"
|
|
|
|
yargs "^16.0.0"
|
|
|
|
|
|
|
|
cliui@^7.0.2:
|
|
|
|
version "7.0.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
|
|
|
|
integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
|
|
|
|
dependencies:
|
|
|
|
string-width "^4.2.0"
|
|
|
|
strip-ansi "^6.0.0"
|
|
|
|
wrap-ansi "^7.0.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
cliui@^8.0.1:
|
|
|
|
version "8.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
|
|
|
|
integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==
|
|
|
|
dependencies:
|
|
|
|
string-width "^4.2.0"
|
|
|
|
strip-ansi "^6.0.1"
|
|
|
|
wrap-ansi "^7.0.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
clone-response@^1.0.2:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "1.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3"
|
|
|
|
integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
mimic-response "^1.0.0"
|
|
|
|
|
|
|
|
co@^4.6.0:
|
|
|
|
version "4.6.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
collect-v8-coverage@^1.0.0:
|
|
|
|
version "1.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59"
|
|
|
|
integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==
|
|
|
|
|
|
|
|
color-convert@^1.9.0:
|
|
|
|
version "1.9.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
|
|
|
|
integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
|
|
|
|
dependencies:
|
|
|
|
color-name "1.1.3"
|
|
|
|
|
|
|
|
color-convert@^2.0.1:
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
|
|
|
|
integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
|
|
|
|
dependencies:
|
|
|
|
color-name "~1.1.4"
|
|
|
|
|
|
|
|
color-name@1.1.3:
|
|
|
|
version "1.1.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
color-name@~1.1.4:
|
|
|
|
version "1.1.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
|
|
|
|
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
|
|
|
|
|
|
|
concat-map@0.0.1:
|
|
|
|
version "0.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
convert-source-map@^1.6.0, convert-source-map@^1.7.0:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "1.9.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
|
|
|
|
integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
convert-source-map@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
|
|
|
|
integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
core-util-is@~1.0.0:
|
|
|
|
version "1.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
|
|
|
|
integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
|
|
|
|
|
|
|
|
cross-spawn@^7.0.3:
|
|
|
|
version "7.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
|
|
|
|
integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
|
|
|
|
dependencies:
|
|
|
|
path-key "^3.1.0"
|
|
|
|
shebang-command "^2.0.0"
|
|
|
|
which "^2.0.1"
|
|
|
|
|
2023-05-22 00:03:07 +01:00
|
|
|
date-fns@^2.29.3:
|
|
|
|
version "2.30.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0"
|
|
|
|
integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==
|
|
|
|
dependencies:
|
|
|
|
"@babel/runtime" "^7.21.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
debug@^4.1.0, debug@^4.1.1, debug@^4.3.4:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "4.3.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
|
|
|
|
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
ms "2.1.2"
|
|
|
|
|
|
|
|
decompress-response@^6.0.0:
|
|
|
|
version "6.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
|
|
|
|
integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
|
|
|
|
dependencies:
|
|
|
|
mimic-response "^3.1.0"
|
|
|
|
|
|
|
|
dedent@^0.7.0:
|
|
|
|
version "0.7.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
deepmerge@^4.2.2:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "4.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
|
|
|
|
integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
defer-to-connect@^2.0.0:
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"
|
|
|
|
integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==
|
|
|
|
|
|
|
|
detect-newline@^3.0.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
|
|
|
|
integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
diff-sequences@^29.4.3:
|
|
|
|
version "29.4.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2"
|
|
|
|
integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
discord-api-types@^0.37.41:
|
|
|
|
version "0.37.42"
|
|
|
|
resolved "https://registry.yarnpkg.com/discord-api-types/-/discord-api-types-0.37.42.tgz#3c196267ed31e9ea249e6880c15e2af1c6428629"
|
|
|
|
integrity sha512-1Huaj9cQ1W7/uryS8MZs/tZemnoKB94thM1cE40lep3rpU3q7WHqkdjN/veX0prTkYlPhcyLd/DeF/pBO8X8oQ==
|
2022-09-18 11:57:22 +01:00
|
|
|
|
|
|
|
discord.js@^14.3.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "14.11.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/discord.js/-/discord.js-14.11.0.tgz#6529d49f30d10fc5a9ff8e6796661aa998769afe"
|
|
|
|
integrity sha512-CkueWYFQ28U38YPR8HgsBR/QT35oPpMbEsTNM30Fs8loBIhnA4s70AwQEoy6JvLcpWWJO7GY0y2BUzZmuBMepQ==
|
|
|
|
dependencies:
|
|
|
|
"@discordjs/builders" "^1.6.3"
|
|
|
|
"@discordjs/collection" "^1.5.1"
|
|
|
|
"@discordjs/formatters" "^0.3.1"
|
|
|
|
"@discordjs/rest" "^1.7.1"
|
|
|
|
"@discordjs/util" "^0.3.1"
|
|
|
|
"@discordjs/ws" "^0.8.3"
|
|
|
|
"@sapphire/snowflake" "^3.4.2"
|
|
|
|
"@types/ws" "^8.5.4"
|
|
|
|
discord-api-types "^0.37.41"
|
2022-09-18 11:57:22 +01:00
|
|
|
fast-deep-equal "^3.1.3"
|
|
|
|
lodash.snakecase "^4.1.1"
|
2023-05-08 18:33:23 +01:00
|
|
|
tslib "^2.5.0"
|
|
|
|
undici "^5.22.0"
|
|
|
|
ws "^8.13.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
dotenv@^16.0.0, dotenv@^16.0.3:
|
2022-12-28 18:52:11 +00:00
|
|
|
version "16.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.3.tgz#115aec42bac5053db3c456db30cc243a5a836a07"
|
|
|
|
integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
electron-to-chromium@^1.4.284:
|
|
|
|
version "1.4.385"
|
|
|
|
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz#1afd8d6280d510145148777b899ff481c65531ff"
|
|
|
|
integrity sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
|
|
|
emittery@^0.13.1:
|
|
|
|
version "0.13.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad"
|
|
|
|
integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-15 18:19:12 +01:00
|
|
|
emoji-regex@^10.0.0:
|
|
|
|
version "10.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.2.1.tgz#a41c330d957191efd3d9dfe6e1e8e1e9ab048b3f"
|
|
|
|
integrity sha512-97g6QgOk8zlDRdgq1WxwgTMgEWGVAQvB5Fdpgc1MkNy56la5SKP9GsMXKDOdqwn90/41a8yPwIGk1Y6WVbeMQA==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
emoji-regex@^8.0.0:
|
|
|
|
version "8.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
|
|
|
|
integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
|
|
|
|
|
|
|
|
end-of-stream@^1.1.0:
|
|
|
|
version "1.4.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
|
|
|
|
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
|
|
|
|
dependencies:
|
|
|
|
once "^1.4.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
error-ex@^1.3.1:
|
|
|
|
version "1.3.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
|
|
|
|
integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
|
|
|
|
dependencies:
|
|
|
|
is-arrayish "^0.2.1"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
escalade@^3.1.1:
|
|
|
|
version "3.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
|
|
|
|
integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
|
|
|
|
|
|
|
|
escape-string-regexp@^1.0.5:
|
|
|
|
version "1.0.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
escape-string-regexp@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
|
|
|
|
integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
esprima@^4.0.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "4.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
|
|
|
|
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
|
|
|
|
|
|
|
|
execa@^5.0.0:
|
|
|
|
version "5.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
|
|
|
|
integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
|
|
|
|
dependencies:
|
|
|
|
cross-spawn "^7.0.3"
|
|
|
|
get-stream "^6.0.0"
|
|
|
|
human-signals "^2.1.0"
|
|
|
|
is-stream "^2.0.0"
|
|
|
|
merge-stream "^2.0.0"
|
|
|
|
npm-run-path "^4.0.1"
|
|
|
|
onetime "^5.1.2"
|
|
|
|
signal-exit "^3.0.3"
|
|
|
|
strip-final-newline "^2.0.0"
|
|
|
|
|
|
|
|
exit@^0.1.2:
|
|
|
|
version "0.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
expect@^29.0.0, expect@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/expect/-/expect-29.5.0.tgz#68c0509156cb2a0adb8865d413b137eeaae682f7"
|
|
|
|
integrity sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/expect-utils" "^29.5.0"
|
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
jest-matcher-utils "^29.5.0"
|
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
fast-deep-equal@^3.1.3:
|
|
|
|
version "3.1.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
|
|
|
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.1.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "2.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
|
|
|
|
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
|
|
|
|
|
|
|
|
fb-watchman@^2.0.0:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "2.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c"
|
|
|
|
integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
bser "2.1.1"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
file-type@^18.3.0:
|
|
|
|
version "18.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/file-type/-/file-type-18.3.0.tgz#116d4df9120b7f17e973ad5c976b82a40407bd07"
|
|
|
|
integrity sha512-pkPZ5OGIq0TYb37b8bHDLNeQSe1H2KlaQ2ySGpJkkr2KZdaWsO4QhPzHA0mQcsUW2cSqJk+4gM/UyLz/UFbXdQ==
|
2022-09-18 11:57:22 +01:00
|
|
|
dependencies:
|
|
|
|
readable-web-to-node-stream "^3.0.2"
|
2023-05-08 18:33:23 +01:00
|
|
|
strtok3 "^7.0.0"
|
|
|
|
token-types "^5.0.1"
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
fill-range@^7.0.1:
|
|
|
|
version "7.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
|
|
|
|
integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
|
|
|
|
dependencies:
|
|
|
|
to-regex-range "^5.0.1"
|
|
|
|
|
|
|
|
find-up@^4.0.0, find-up@^4.1.0:
|
|
|
|
version "4.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
|
|
|
|
integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
|
|
|
|
dependencies:
|
|
|
|
locate-path "^5.0.0"
|
|
|
|
path-exists "^4.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
form-data-encoder@1.7.2:
|
|
|
|
version "1.7.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-1.7.2.tgz#1f1ae3dccf58ed4690b86d87e4f57c654fbab040"
|
|
|
|
integrity sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
fs.realpath@^1.0.0:
|
|
|
|
version "1.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
fsevents@^2.3.2:
|
|
|
|
version "2.3.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
|
|
|
|
integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
|
|
|
|
|
|
|
|
function-bind@^1.1.1:
|
|
|
|
version "1.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
|
|
|
|
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
|
|
|
|
|
|
|
|
gensync@^1.0.0-beta.2:
|
|
|
|
version "1.0.0-beta.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
|
|
|
|
integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
|
|
|
|
|
|
|
|
get-caller-file@^2.0.5:
|
|
|
|
version "2.0.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
|
|
|
|
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
|
|
|
|
|
|
|
|
get-package-type@^0.1.0:
|
|
|
|
version "0.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a"
|
|
|
|
integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
|
|
|
|
|
|
|
|
get-stream@^5.1.0:
|
|
|
|
version "5.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
|
|
|
|
integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
|
|
|
|
dependencies:
|
|
|
|
pump "^3.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
get-stream@^6.0.0, get-stream@^6.0.1:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "6.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
|
|
|
|
integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
|
|
|
|
|
|
|
|
glob-parent@^6.0.0:
|
|
|
|
version "6.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
|
|
|
|
integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
|
|
|
|
dependencies:
|
|
|
|
is-glob "^4.0.3"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
glob@^7.1.3, glob@^7.1.4:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.2.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
|
|
|
|
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
fs.realpath "^1.0.0"
|
|
|
|
inflight "^1.0.4"
|
|
|
|
inherits "2"
|
2023-05-08 18:24:09 +01:00
|
|
|
minimatch "^3.1.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
once "^1.3.0"
|
|
|
|
path-is-absolute "^1.0.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
glob@^8.1.0:
|
|
|
|
version "8.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e"
|
|
|
|
integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
|
|
|
|
dependencies:
|
|
|
|
fs.realpath "^1.0.0"
|
|
|
|
inflight "^1.0.4"
|
|
|
|
inherits "2"
|
|
|
|
minimatch "^5.0.1"
|
|
|
|
once "^1.3.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
globals@^11.1.0:
|
|
|
|
version "11.12.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
|
|
|
|
integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
got-cjs@^12.5.4:
|
|
|
|
version "12.5.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/got-cjs/-/got-cjs-12.5.4.tgz#b46419c0e8e5fb5503b926941807408049ae2e11"
|
|
|
|
integrity sha512-Uas6lAsP8bRCt5WXGMhjFf/qEHTrm4v4qxGR02rLG2kdG9qedctvlkdwXVcDJ7Cs84X+r4dPU7vdwGjCaspXug==
|
|
|
|
dependencies:
|
|
|
|
"@sindresorhus/is" "4.6.0"
|
|
|
|
"@szmarczak/http-timer" "4.0.6"
|
|
|
|
"@types/responselike" "1.0.0"
|
|
|
|
cacheable-lookup "6.1.0"
|
|
|
|
cacheable-request "7.0.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
decompress-response "^6.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
form-data-encoder "1.7.2"
|
|
|
|
get-stream "^6.0.1"
|
|
|
|
http2-wrapper "^2.1.10"
|
|
|
|
lowercase-keys "2.0.0"
|
|
|
|
p-cancelable "2.1.1"
|
|
|
|
responselike "2.0.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs@^4.2.9:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "4.2.11"
|
|
|
|
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
|
|
|
|
integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
has-flag@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
has-flag@^4.0.0:
|
|
|
|
version "4.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
|
|
|
|
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
|
|
|
|
|
|
|
|
has@^1.0.3:
|
|
|
|
version "1.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
|
|
|
|
integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
|
|
|
|
dependencies:
|
|
|
|
function-bind "^1.1.1"
|
|
|
|
|
|
|
|
highlight.js@^10.7.1:
|
|
|
|
version "10.7.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-10.7.3.tgz#697272e3991356e40c3cac566a74eef681756531"
|
|
|
|
integrity sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==
|
|
|
|
|
|
|
|
html-escaper@^2.0.0:
|
|
|
|
version "2.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
|
|
|
|
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
|
|
|
|
|
|
|
|
http-cache-semantics@^4.0.0:
|
2023-03-25 13:27:35 +00:00
|
|
|
version "4.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a"
|
|
|
|
integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
http2-wrapper@^2.1.10:
|
|
|
|
version "2.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.2.0.tgz#b80ad199d216b7d3680195077bd7b9060fa9d7f3"
|
|
|
|
integrity sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
quick-lru "^5.1.1"
|
2023-05-08 18:33:23 +01:00
|
|
|
resolve-alpn "^1.2.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
human-signals@^2.1.0:
|
|
|
|
version "2.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
|
|
|
|
integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
|
|
|
|
|
|
|
|
ieee754@^1.2.1:
|
|
|
|
version "1.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
|
|
|
|
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
|
|
|
|
|
|
|
|
import-local@^3.0.2:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4"
|
|
|
|
integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
pkg-dir "^4.2.0"
|
|
|
|
resolve-cwd "^3.0.0"
|
|
|
|
|
|
|
|
imurmurhash@^0.1.4:
|
|
|
|
version "0.1.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
inflight@^1.0.4:
|
|
|
|
version "1.0.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
once "^1.3.0"
|
|
|
|
wrappy "1"
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "2.0.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
|
|
|
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
is-arrayish@^0.2.1:
|
|
|
|
version "0.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
|
|
|
|
integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
is-core-module@^2.11.0:
|
|
|
|
version "2.12.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.0.tgz#36ad62f6f73c8253fd6472517a12483cf03e7ec4"
|
|
|
|
integrity sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
has "^1.0.3"
|
|
|
|
|
|
|
|
is-extglob@^2.1.1:
|
|
|
|
version "2.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
|
2023-05-08 18:33:23 +01:00
|
|
|
integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
is-fullwidth-code-point@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
|
|
|
|
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
|
|
|
|
|
|
|
|
is-generator-fn@^2.0.0:
|
|
|
|
version "2.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118"
|
|
|
|
integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==
|
|
|
|
|
|
|
|
is-glob@^4.0.3:
|
|
|
|
version "4.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
|
|
|
|
integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
|
|
|
|
dependencies:
|
|
|
|
is-extglob "^2.1.1"
|
|
|
|
|
|
|
|
is-number@^7.0.0:
|
|
|
|
version "7.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
|
|
|
|
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
|
|
|
|
|
|
|
|
is-stream@^2.0.0:
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
|
|
|
|
integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
|
|
|
|
|
|
|
|
isarray@~1.0.0:
|
|
|
|
version "1.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
|
2023-05-08 18:33:23 +01:00
|
|
|
integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
isexe@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
|
|
|
|
version "3.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3"
|
|
|
|
integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "5.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d"
|
|
|
|
integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==
|
|
|
|
dependencies:
|
|
|
|
"@babel/core" "^7.12.3"
|
|
|
|
"@babel/parser" "^7.14.7"
|
|
|
|
"@istanbuljs/schema" "^0.1.2"
|
|
|
|
istanbul-lib-coverage "^3.2.0"
|
|
|
|
semver "^6.3.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
istanbul-lib-report@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6"
|
|
|
|
integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==
|
|
|
|
dependencies:
|
|
|
|
istanbul-lib-coverage "^3.0.0"
|
|
|
|
make-dir "^3.0.0"
|
|
|
|
supports-color "^7.1.0"
|
|
|
|
|
|
|
|
istanbul-lib-source-maps@^4.0.0:
|
|
|
|
version "4.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551"
|
|
|
|
integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
|
|
|
|
dependencies:
|
|
|
|
debug "^4.1.1"
|
|
|
|
istanbul-lib-coverage "^3.0.0"
|
|
|
|
source-map "^0.6.1"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
istanbul-reports@^3.1.3:
|
|
|
|
version "3.1.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae"
|
|
|
|
integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
html-escaper "^2.0.0"
|
|
|
|
istanbul-lib-report "^3.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-changed-files@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.5.0.tgz#e88786dca8bf2aa899ec4af7644e16d9dcf9b23e"
|
|
|
|
integrity sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
execa "^5.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
p-limit "^3.1.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-circus@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.5.0.tgz#b5926989449e75bff0d59944bae083c9d7fb7317"
|
|
|
|
integrity sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/environment" "^29.5.0"
|
|
|
|
"@jest/expect" "^29.5.0"
|
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
chalk "^4.0.0"
|
|
|
|
co "^4.6.0"
|
|
|
|
dedent "^0.7.0"
|
|
|
|
is-generator-fn "^2.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-each "^29.5.0"
|
|
|
|
jest-matcher-utils "^29.5.0"
|
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-runtime "^29.5.0"
|
|
|
|
jest-snapshot "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
p-limit "^3.1.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format "^29.5.0"
|
|
|
|
pure-rand "^6.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
stack-utils "^2.0.3"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-cli@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.5.0.tgz#b34c20a6d35968f3ee47a7437ff8e53e086b4a67"
|
|
|
|
integrity sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/core" "^29.5.0"
|
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk "^4.0.0"
|
|
|
|
exit "^0.1.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2022-04-24 14:46:37 +01:00
|
|
|
import-local "^3.0.2"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-config "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-validate "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
prompts "^2.0.1"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
yargs "^17.3.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-config@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.5.0.tgz#3cc972faec8c8aaea9ae158c694541b79f3748da"
|
|
|
|
integrity sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/core" "^7.11.6"
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/test-sequencer" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
|
|
|
babel-jest "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk "^4.0.0"
|
|
|
|
ci-info "^3.2.0"
|
|
|
|
deepmerge "^4.2.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
glob "^7.1.3"
|
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-circus "^29.5.0"
|
|
|
|
jest-environment-node "^29.5.0"
|
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
jest-regex-util "^29.4.3"
|
|
|
|
jest-resolve "^29.5.0"
|
|
|
|
jest-runner "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-validate "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
micromatch "^4.0.4"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
parse-json "^5.2.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
strip-json-comments "^3.1.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-diff@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.5.0.tgz#e0d83a58eb5451dcc1fa61b1c3ee4e8f5a290d63"
|
|
|
|
integrity sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
chalk "^4.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
diff-sequences "^29.4.3"
|
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-docblock@^29.4.3:
|
|
|
|
version "29.4.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.4.3.tgz#90505aa89514a1c7dceeac1123df79e414636ea8"
|
|
|
|
integrity sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
detect-newline "^3.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-each@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.5.0.tgz#fc6e7014f83eac68e22b7195598de8554c2e5c06"
|
|
|
|
integrity sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk "^4.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
pretty-format "^29.5.0"
|
|
|
|
|
|
|
|
jest-environment-node@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.5.0.tgz#f17219d0f0cc0e68e0727c58b792c040e332c967"
|
|
|
|
integrity sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==
|
|
|
|
dependencies:
|
|
|
|
"@jest/environment" "^29.5.0"
|
|
|
|
"@jest/fake-timers" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-mock "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-get-type@^29.4.3:
|
|
|
|
version "29.4.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.4.3.tgz#1ab7a5207c995161100b5187159ca82dd48b3dd5"
|
|
|
|
integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-haste-map@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.5.0.tgz#69bd67dc9012d6e2723f20a945099e972b2e94de"
|
|
|
|
integrity sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/graceful-fs" "^4.1.3"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
anymatch "^3.0.3"
|
|
|
|
fb-watchman "^2.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-regex-util "^29.4.3"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-worker "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
micromatch "^4.0.4"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
walker "^1.0.8"
|
2022-04-24 14:46:37 +01:00
|
|
|
optionalDependencies:
|
|
|
|
fsevents "^2.3.2"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-leak-detector@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz#cf4bdea9615c72bac4a3a7ba7e7930f9c0610c8c"
|
|
|
|
integrity sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-matcher-utils@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz#d957af7f8c0692c5453666705621ad4abc2c59c5"
|
|
|
|
integrity sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
chalk "^4.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-diff "^29.5.0"
|
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-message-util@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.5.0.tgz#1f776cac3aca332ab8dd2e3b41625435085c900e"
|
|
|
|
integrity sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@babel/code-frame" "^7.12.13"
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/stack-utils" "^2.0.0"
|
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2022-04-24 14:46:37 +01:00
|
|
|
micromatch "^4.0.4"
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
stack-utils "^2.0.3"
|
|
|
|
|
2022-12-28 18:52:23 +00:00
|
|
|
jest-mock-extended@^3.0.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "3.0.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-mock-extended/-/jest-mock-extended-3.0.4.tgz#12a5f993d27aa46232012c439a9b7c54f3b0a1fd"
|
|
|
|
integrity sha512-2ynEZ7IEJNrhrgshklDMhrOdnmW4Nt+PhkyRqZxRgpwMo7JjmFWMzyp0+eSyk+H9KK1QjXI5xTZIw6x7cVDcRg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
ts-essentials "^7.0.3"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-mock@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.5.0.tgz#26e2172bcc71d8b0195081ff1f146ac7e1518aed"
|
|
|
|
integrity sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
jest-pnp-resolver@^1.2.2:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "1.2.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e"
|
|
|
|
integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-regex-util@^29.4.3:
|
|
|
|
version "29.4.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.4.3.tgz#a42616141e0cae052cfa32c169945d00c0aa0bb8"
|
|
|
|
integrity sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-resolve-dependencies@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz#f0ea29955996f49788bf70996052aa98e7befee4"
|
|
|
|
integrity sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-regex-util "^29.4.3"
|
|
|
|
jest-snapshot "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-resolve@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.5.0.tgz#b053cc95ad1d5f6327f0ac8aae9f98795475ecdc"
|
|
|
|
integrity sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-haste-map "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
jest-pnp-resolver "^1.2.2"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-validate "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
resolve "^1.20.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
resolve.exports "^2.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-runner@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.5.0.tgz#6a57c282eb0ef749778d444c1d758c6a7693b6f8"
|
|
|
|
integrity sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/console" "^29.5.0"
|
|
|
|
"@jest/environment" "^29.5.0"
|
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/transform" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
emittery "^0.13.1"
|
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-docblock "^29.4.3"
|
|
|
|
jest-environment-node "^29.5.0"
|
|
|
|
jest-haste-map "^29.5.0"
|
|
|
|
jest-leak-detector "^29.5.0"
|
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-resolve "^29.5.0"
|
|
|
|
jest-runtime "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
|
|
|
jest-watcher "^29.5.0"
|
|
|
|
jest-worker "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
p-limit "^3.1.0"
|
|
|
|
source-map-support "0.5.13"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-runtime@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.5.0.tgz#c83f943ee0c1da7eb91fa181b0811ebd59b03420"
|
|
|
|
integrity sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==
|
|
|
|
dependencies:
|
|
|
|
"@jest/environment" "^29.5.0"
|
|
|
|
"@jest/fake-timers" "^29.5.0"
|
|
|
|
"@jest/globals" "^29.5.0"
|
|
|
|
"@jest/source-map" "^29.4.3"
|
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/transform" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/node" "*"
|
2022-04-24 14:46:37 +01:00
|
|
|
chalk "^4.0.0"
|
|
|
|
cjs-module-lexer "^1.0.0"
|
|
|
|
collect-v8-coverage "^1.0.0"
|
|
|
|
glob "^7.1.3"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-haste-map "^29.5.0"
|
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-mock "^29.5.0"
|
|
|
|
jest-regex-util "^29.4.3"
|
|
|
|
jest-resolve "^29.5.0"
|
|
|
|
jest-snapshot "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
slash "^3.0.0"
|
|
|
|
strip-bom "^4.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-snapshot@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.5.0.tgz#c9c1ce0331e5b63cd444e2f95a55a73b84b1e8ce"
|
|
|
|
integrity sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/core" "^7.11.6"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@babel/generator" "^7.7.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/plugin-syntax-jsx" "^7.7.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@babel/plugin-syntax-typescript" "^7.7.2"
|
|
|
|
"@babel/traverse" "^7.7.2"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@babel/types" "^7.3.3"
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/expect-utils" "^29.5.0"
|
|
|
|
"@jest/transform" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/babel__traverse" "^7.0.6"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/prettier" "^2.1.5"
|
|
|
|
babel-preset-current-node-syntax "^1.0.0"
|
|
|
|
chalk "^4.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
expect "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
graceful-fs "^4.2.9"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-diff "^29.5.0"
|
|
|
|
jest-get-type "^29.4.3"
|
|
|
|
jest-matcher-utils "^29.5.0"
|
|
|
|
jest-message-util "^29.5.0"
|
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
natural-compare "^1.4.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
semver "^7.3.5"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
jest-util@^29.0.0, jest-util@^29.5.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f"
|
|
|
|
integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
chalk "^4.0.0"
|
|
|
|
ci-info "^3.2.0"
|
|
|
|
graceful-fs "^4.2.9"
|
|
|
|
picomatch "^2.2.3"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-validate@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.5.0.tgz#8e5a8f36178d40e47138dc00866a5f3bd9916ffc"
|
|
|
|
integrity sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
camelcase "^6.2.0"
|
|
|
|
chalk "^4.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-get-type "^29.4.3"
|
2022-04-24 14:46:37 +01:00
|
|
|
leven "^3.1.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-watcher@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.5.0.tgz#cf7f0f949828ba65ddbbb45c743a382a4d911363"
|
|
|
|
integrity sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/test-result" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/node" "*"
|
|
|
|
ansi-escapes "^4.2.1"
|
|
|
|
chalk "^4.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
emittery "^0.13.1"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
string-length "^4.0.1"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-worker@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.5.0.tgz#bdaefb06811bd3384d93f009755014d8acb4615d"
|
|
|
|
integrity sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
"@types/node" "*"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-util "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
merge-stream "^2.0.0"
|
|
|
|
supports-color "^8.0.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
jest@^29.0.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/jest/-/jest-29.5.0.tgz#f75157622f5ce7ad53028f2f8888ab53e1f1f24e"
|
|
|
|
integrity sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/core" "^29.5.0"
|
|
|
|
"@jest/types" "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
import-local "^3.0.2"
|
2023-05-08 18:33:23 +01:00
|
|
|
jest-cli "^29.5.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
js-tokens@^4.0.0:
|
|
|
|
version "4.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
|
|
|
|
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
|
|
|
|
|
|
|
|
js-yaml@^3.13.1:
|
|
|
|
version "3.14.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
|
|
|
|
integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
|
|
|
|
dependencies:
|
|
|
|
argparse "^1.0.7"
|
|
|
|
esprima "^4.0.0"
|
|
|
|
|
|
|
|
jsesc@^2.5.1:
|
|
|
|
version "2.5.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
|
|
|
|
integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
json-buffer@3.0.1:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "3.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
|
|
|
|
integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
json-parse-even-better-errors@^2.3.0:
|
|
|
|
version "2.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
|
|
|
|
integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
|
|
|
|
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
json5@^2.2.2, json5@^2.2.3:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "2.2.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
|
|
|
|
integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
keyv@^4.0.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "4.5.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.2.tgz#0e310ce73bf7851ec702f2eaf46ec4e3805cce56"
|
|
|
|
integrity sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
json-buffer "3.0.1"
|
|
|
|
|
|
|
|
kleur@^3.0.3:
|
|
|
|
version "3.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
|
|
|
|
integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
|
|
|
|
|
|
|
|
leven@^3.1.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
|
|
|
|
integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
lines-and-columns@^1.1.6:
|
|
|
|
version "1.2.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
|
|
|
|
integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-02-01 17:33:13 +00:00
|
|
|
linqts@^1.14.4:
|
|
|
|
version "1.14.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/linqts/-/linqts-1.14.4.tgz#0aa0f78fc6be073d7db874e0a0480fda5d06db7d"
|
|
|
|
integrity sha512-b5sJjG1ZQ8iLSTJV19jWgMLoQicrQVVRkkQN7B/aboU+cf30lgnhIoGM8vEjqPxZFpryDU78PFpuTnfYNIHMeg==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
locate-path@^5.0.0:
|
|
|
|
version "5.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
|
|
|
|
integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
|
|
|
|
dependencies:
|
|
|
|
p-locate "^4.1.0"
|
|
|
|
|
|
|
|
lodash.memoize@4.x:
|
|
|
|
version "4.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
lodash.snakecase@^4.1.1:
|
|
|
|
version "4.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d"
|
|
|
|
integrity sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
lodash@^4.17.21:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "4.17.21"
|
|
|
|
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
|
|
|
|
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
lowercase-keys@2.0.0, lowercase-keys@^2.0.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
|
|
|
|
integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
lru-cache@^5.1.1:
|
|
|
|
version "5.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
|
|
|
|
integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
|
|
|
|
dependencies:
|
|
|
|
yallist "^3.0.2"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
lru-cache@^6.0.0:
|
|
|
|
version "6.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
|
|
|
|
integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
|
|
|
|
dependencies:
|
|
|
|
yallist "^4.0.0"
|
|
|
|
|
|
|
|
make-dir@^3.0.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
|
|
|
|
integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
|
|
|
|
dependencies:
|
|
|
|
semver "^6.0.0"
|
|
|
|
|
|
|
|
make-error@1.x:
|
|
|
|
version "1.3.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
|
|
|
|
integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
|
|
|
|
|
|
|
|
makeerror@1.0.12:
|
|
|
|
version "1.0.12"
|
|
|
|
resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a"
|
|
|
|
integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==
|
|
|
|
dependencies:
|
|
|
|
tmpl "1.0.5"
|
|
|
|
|
|
|
|
merge-stream@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
|
|
|
|
integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
|
|
|
|
|
|
|
|
micromatch@^4.0.4:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "4.0.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
|
|
|
|
integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
braces "^3.0.2"
|
|
|
|
picomatch "^2.3.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
mimic-fn@^2.1.0:
|
|
|
|
version "2.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
|
|
|
|
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
|
|
|
|
|
|
|
|
mimic-response@^1.0.0:
|
|
|
|
version "1.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
|
|
|
|
integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
|
|
|
|
|
|
|
|
mimic-response@^3.1.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
|
|
|
|
integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
|
|
|
|
|
2023-05-22 18:07:24 +01:00
|
|
|
minimatch@9.0.1:
|
|
|
|
version "9.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.1.tgz#8a555f541cf976c622daf078bb28f29fb927c253"
|
|
|
|
integrity sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==
|
2022-12-02 17:39:12 +00:00
|
|
|
dependencies:
|
2023-03-20 17:59:28 +00:00
|
|
|
brace-expansion "^2.0.1"
|
2022-12-02 17:39:12 +00:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
minimatch@^3.0.4, minimatch@^3.1.1:
|
2022-12-02 17:39:12 +00:00
|
|
|
version "3.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
|
|
|
|
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
brace-expansion "^1.1.7"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
minimatch@^5.0.1:
|
|
|
|
version "5.1.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96"
|
|
|
|
integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
brace-expansion "^2.0.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
mkdirp@^2.1.3:
|
|
|
|
version "2.1.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-2.1.6.tgz#964fbcb12b2d8c5d6fbc62a963ac95a273e2cc19"
|
|
|
|
integrity sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
ms@2.1.2:
|
|
|
|
version "2.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
|
|
|
|
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
|
|
|
|
|
|
|
|
mysql@^2.18.1:
|
|
|
|
version "2.18.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/mysql/-/mysql-2.18.1.tgz#2254143855c5a8c73825e4522baf2ea021766717"
|
|
|
|
integrity sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==
|
|
|
|
dependencies:
|
|
|
|
bignumber.js "9.0.0"
|
|
|
|
readable-stream "2.3.7"
|
|
|
|
safe-buffer "5.1.2"
|
|
|
|
sqlstring "2.3.1"
|
|
|
|
|
|
|
|
mz@^2.4.0:
|
|
|
|
version "2.7.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
|
|
|
|
integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
|
|
|
|
dependencies:
|
|
|
|
any-promise "^1.0.0"
|
|
|
|
object-assign "^4.0.1"
|
|
|
|
thenify-all "^1.0.0"
|
|
|
|
|
|
|
|
natural-compare@^1.4.0:
|
|
|
|
version "1.4.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
node-int64@^0.4.0:
|
|
|
|
version "0.4.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
node-releases@^2.0.8:
|
|
|
|
version "2.0.10"
|
|
|
|
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f"
|
|
|
|
integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
normalize-path@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
|
|
|
|
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
|
|
|
|
|
|
|
|
normalize-url@^6.0.1:
|
|
|
|
version "6.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
|
|
|
|
integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
|
|
|
|
|
|
|
|
npm-run-path@^4.0.1:
|
|
|
|
version "4.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
|
|
|
|
integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
|
|
|
|
dependencies:
|
|
|
|
path-key "^3.0.0"
|
|
|
|
|
|
|
|
object-assign@^4.0.1:
|
|
|
|
version "4.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
once@^1.3.0, once@^1.3.1, once@^1.4.0:
|
|
|
|
version "1.4.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
2023-05-08 18:33:23 +01:00
|
|
|
integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
wrappy "1"
|
|
|
|
|
|
|
|
onetime@^5.1.2:
|
|
|
|
version "5.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
|
|
|
|
integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
|
|
|
|
dependencies:
|
|
|
|
mimic-fn "^2.1.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
p-cancelable@2.1.1:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "2.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf"
|
|
|
|
integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==
|
|
|
|
|
|
|
|
p-limit@^2.2.0:
|
|
|
|
version "2.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
|
|
|
|
integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
|
|
|
|
dependencies:
|
|
|
|
p-try "^2.0.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
p-limit@^3.1.0:
|
|
|
|
version "3.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
|
|
|
|
integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
|
|
|
|
dependencies:
|
|
|
|
yocto-queue "^0.1.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
p-locate@^4.1.0:
|
|
|
|
version "4.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
|
|
|
|
integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
|
|
|
|
dependencies:
|
|
|
|
p-limit "^2.2.0"
|
|
|
|
|
|
|
|
p-try@^2.0.0:
|
|
|
|
version "2.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
|
|
|
|
integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
parse-json@^5.2.0:
|
|
|
|
version "5.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
|
|
|
|
integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
|
|
|
|
dependencies:
|
|
|
|
"@babel/code-frame" "^7.0.0"
|
|
|
|
error-ex "^1.3.1"
|
|
|
|
json-parse-even-better-errors "^2.3.0"
|
|
|
|
lines-and-columns "^1.1.6"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
parse5-htmlparser2-tree-adapter@^6.0.0:
|
|
|
|
version "6.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6"
|
|
|
|
integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==
|
|
|
|
dependencies:
|
|
|
|
parse5 "^6.0.1"
|
|
|
|
|
|
|
|
parse5@^5.1.1:
|
|
|
|
version "5.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178"
|
|
|
|
integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
parse5@^6.0.1:
|
|
|
|
version "6.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b"
|
|
|
|
integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
path-exists@^4.0.0:
|
|
|
|
version "4.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
|
|
|
|
integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
|
|
|
|
|
|
|
|
path-is-absolute@^1.0.0:
|
|
|
|
version "1.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
path-key@^3.0.0, path-key@^3.1.0:
|
|
|
|
version "3.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
|
|
|
|
integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
path-parse@^1.0.7:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "1.0.7"
|
|
|
|
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
|
|
|
|
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
peek-readable@^5.0.0:
|
|
|
|
version "5.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/peek-readable/-/peek-readable-5.0.0.tgz#7ead2aff25dc40458c60347ea76cfdfd63efdfec"
|
|
|
|
integrity sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
picocolors@^1.0.0:
|
|
|
|
version "1.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
|
|
|
|
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1:
|
|
|
|
version "2.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
|
|
|
|
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
pirates@^4.0.4:
|
|
|
|
version "4.0.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"
|
|
|
|
integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
pkg-dir@^4.2.0:
|
|
|
|
version "4.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
|
|
|
|
integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
|
|
|
|
dependencies:
|
|
|
|
find-up "^4.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
pretty-format@^29.0.0, pretty-format@^29.5.0:
|
|
|
|
version "29.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.5.0.tgz#283134e74f70e2e3e7229336de0e4fce94ccde5a"
|
|
|
|
integrity sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:33:23 +01:00
|
|
|
"@jest/schemas" "^29.4.3"
|
2022-04-24 14:46:37 +01:00
|
|
|
ansi-styles "^5.0.0"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
react-is "^18.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
process-nextick-args@~2.0.0:
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
|
|
|
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
|
|
|
|
|
|
|
|
prompts@^2.0.1:
|
|
|
|
version "2.4.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
|
|
|
|
integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
|
|
|
|
dependencies:
|
|
|
|
kleur "^3.0.3"
|
|
|
|
sisteransi "^1.0.5"
|
|
|
|
|
|
|
|
pump@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
|
|
|
|
integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
|
|
|
|
dependencies:
|
|
|
|
end-of-stream "^1.1.0"
|
|
|
|
once "^1.3.1"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
pure-rand@^6.0.0:
|
|
|
|
version "6.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.2.tgz#a9c2ddcae9b68d736a8163036f088a2781c8b306"
|
|
|
|
integrity sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
quick-lru@^5.1.1:
|
|
|
|
version "5.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
|
|
|
|
integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
|
|
|
|
|
2023-02-01 17:33:13 +00:00
|
|
|
random-bunny@^2.0.5:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "2.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/random-bunny/-/random-bunny-2.1.0.tgz#ddabec169b0dc2207a67eeed454cf19f87b4de48"
|
|
|
|
integrity sha512-NtPS4Ltqh2mdVddUeDCzP+lgbx5XAxwyq04BSRuchFDRycWVO9XqO2NEEim/rYYu7iA99v7I5B3/VUZb1NiE0g==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
glob-parent "^6.0.0"
|
2023-05-08 18:33:23 +01:00
|
|
|
got-cjs "^12.5.4"
|
2023-02-01 17:33:13 +00:00
|
|
|
linqts "^1.14.4"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
react-is@^18.0.0:
|
|
|
|
version "18.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
|
|
|
|
integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
readable-stream@2.3.7:
|
|
|
|
version "2.3.7"
|
|
|
|
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
|
|
|
|
integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
|
|
|
|
dependencies:
|
|
|
|
core-util-is "~1.0.0"
|
|
|
|
inherits "~2.0.3"
|
|
|
|
isarray "~1.0.0"
|
|
|
|
process-nextick-args "~2.0.0"
|
|
|
|
safe-buffer "~5.1.1"
|
|
|
|
string_decoder "~1.1.1"
|
|
|
|
util-deprecate "~1.0.1"
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
readable-stream@^3.6.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "3.6.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
|
|
|
|
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
|
2022-09-18 11:57:22 +01:00
|
|
|
dependencies:
|
|
|
|
inherits "^2.0.3"
|
|
|
|
string_decoder "^1.1.1"
|
|
|
|
util-deprecate "^1.0.1"
|
|
|
|
|
|
|
|
readable-web-to-node-stream@^3.0.2:
|
|
|
|
version "3.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz#5d52bb5df7b54861fd48d015e93a2cb87b3ee0bb"
|
|
|
|
integrity sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==
|
|
|
|
dependencies:
|
|
|
|
readable-stream "^3.6.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
reflect-metadata@^0.1.13:
|
|
|
|
version "0.1.13"
|
|
|
|
resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08"
|
|
|
|
integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==
|
|
|
|
|
2023-05-22 00:03:07 +01:00
|
|
|
regenerator-runtime@^0.13.11:
|
|
|
|
version "0.13.11"
|
|
|
|
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
|
|
|
|
integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
require-directory@^2.1.1:
|
|
|
|
version "2.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
resolve-alpn@^1.2.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "1.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"
|
|
|
|
integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==
|
|
|
|
|
|
|
|
resolve-cwd@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
|
|
|
|
integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
|
|
|
|
dependencies:
|
|
|
|
resolve-from "^5.0.0"
|
|
|
|
|
|
|
|
resolve-from@^5.0.0:
|
|
|
|
version "5.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
|
|
|
|
integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
resolve.exports@^2.0.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "2.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800"
|
|
|
|
integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
resolve@^1.20.0:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "1.22.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f"
|
|
|
|
integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
is-core-module "^2.11.0"
|
|
|
|
path-parse "^1.0.7"
|
|
|
|
supports-preserve-symlinks-flag "^1.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
responselike@2.0.1, responselike@^2.0.0:
|
|
|
|
version "2.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.1.tgz#9a0bc8fdc252f3fb1cca68b016591059ba1422bc"
|
|
|
|
integrity sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
lowercase-keys "^2.0.0"
|
|
|
|
|
|
|
|
safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
|
|
|
|
version "5.1.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
|
|
|
|
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
safe-buffer@^5.0.1, safe-buffer@~5.2.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "5.2.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
|
|
|
|
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
semver@7.x, semver@^7.3.5:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "7.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.0.tgz#ed8c5dc8efb6c629c88b23d41dc9bf40c1d96cd0"
|
|
|
|
integrity sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
lru-cache "^6.0.0"
|
|
|
|
|
|
|
|
semver@^6.0.0, semver@^6.3.0:
|
|
|
|
version "6.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
|
|
|
|
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
|
|
|
|
|
|
|
|
sha.js@^2.4.11:
|
|
|
|
version "2.4.11"
|
|
|
|
resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
|
|
|
|
integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
|
|
|
|
dependencies:
|
|
|
|
inherits "^2.0.1"
|
|
|
|
safe-buffer "^5.0.1"
|
|
|
|
|
|
|
|
shebang-command@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
|
|
|
|
integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
|
|
|
|
dependencies:
|
|
|
|
shebang-regex "^3.0.0"
|
|
|
|
|
|
|
|
shebang-regex@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
|
|
|
|
integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
signal-exit@^3.0.3, signal-exit@^3.0.7:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "3.0.7"
|
|
|
|
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
|
|
|
|
integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
sisteransi@^1.0.5:
|
|
|
|
version "1.0.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
|
|
|
|
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
|
|
|
|
|
|
|
|
slash@^3.0.0:
|
|
|
|
version "3.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
|
|
|
|
integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
source-map-support@0.5.13:
|
|
|
|
version "0.5.13"
|
|
|
|
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932"
|
|
|
|
integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
buffer-from "^1.0.0"
|
|
|
|
source-map "^0.6.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
source-map@^0.6.0, source-map@^0.6.1:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "0.6.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
|
|
|
|
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
|
|
|
|
|
|
|
|
sprintf-js@~1.0.2:
|
|
|
|
version "1.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
sqlstring@2.3.1:
|
|
|
|
version "2.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/sqlstring/-/sqlstring-2.3.1.tgz#475393ff9e91479aea62dcaf0ca3d14983a7fb40"
|
2023-05-08 18:33:23 +01:00
|
|
|
integrity sha512-ooAzh/7dxIG5+uDik1z/Rd1vli0+38izZhGzSa34FwR7IbelPWCCKSNIl8jlL/F7ERvy8CB2jNeM1E9i9mXMAQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
stack-utils@^2.0.3:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "2.0.6"
|
|
|
|
resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f"
|
|
|
|
integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
escape-string-regexp "^2.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
streamsearch@^1.1.0:
|
|
|
|
version "1.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764"
|
|
|
|
integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
string-length@^4.0.1:
|
|
|
|
version "4.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a"
|
|
|
|
integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==
|
|
|
|
dependencies:
|
|
|
|
char-regex "^1.0.2"
|
|
|
|
strip-ansi "^6.0.0"
|
|
|
|
|
|
|
|
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
|
|
|
|
version "4.2.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
|
|
|
|
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
|
|
|
|
dependencies:
|
|
|
|
emoji-regex "^8.0.0"
|
|
|
|
is-fullwidth-code-point "^3.0.0"
|
|
|
|
strip-ansi "^6.0.1"
|
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
string_decoder@^1.1.1:
|
|
|
|
version "1.3.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
|
|
|
integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
|
|
|
|
dependencies:
|
|
|
|
safe-buffer "~5.2.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
string_decoder@~1.1.1:
|
|
|
|
version "1.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
|
|
|
|
integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
|
|
|
|
dependencies:
|
|
|
|
safe-buffer "~5.1.0"
|
|
|
|
|
|
|
|
strip-ansi@^6.0.0, strip-ansi@^6.0.1:
|
|
|
|
version "6.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
|
|
|
|
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
|
|
|
|
dependencies:
|
|
|
|
ansi-regex "^5.0.1"
|
|
|
|
|
|
|
|
strip-bom@^4.0.0:
|
|
|
|
version "4.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
|
|
|
|
integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
|
|
|
|
|
|
|
|
strip-final-newline@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
|
|
|
|
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
strip-json-comments@^3.1.1:
|
|
|
|
version "3.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
|
|
|
|
integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
strtok3@^7.0.0:
|
2022-09-18 11:57:22 +01:00
|
|
|
version "7.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/strtok3/-/strtok3-7.0.0.tgz#868c428b4ade64a8fd8fee7364256001c1a4cbe5"
|
|
|
|
integrity sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==
|
|
|
|
dependencies:
|
|
|
|
"@tokenizer/token" "^0.3.0"
|
|
|
|
peek-readable "^5.0.0"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
supports-color@^5.3.0:
|
|
|
|
version "5.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
|
|
|
|
integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
|
|
|
|
dependencies:
|
|
|
|
has-flag "^3.0.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
supports-color@^7.1.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "7.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
|
|
|
|
integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
|
|
|
|
dependencies:
|
|
|
|
has-flag "^4.0.0"
|
|
|
|
|
|
|
|
supports-color@^8.0.0:
|
|
|
|
version "8.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
|
|
|
|
integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
|
|
|
|
dependencies:
|
|
|
|
has-flag "^4.0.0"
|
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
supports-preserve-symlinks-flag@^1.0.0:
|
|
|
|
version "1.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
|
|
|
|
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
test-exclude@^6.0.0:
|
|
|
|
version "6.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
|
|
|
|
integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
|
|
|
|
dependencies:
|
|
|
|
"@istanbuljs/schema" "^0.1.2"
|
|
|
|
glob "^7.1.4"
|
|
|
|
minimatch "^3.0.4"
|
|
|
|
|
|
|
|
thenify-all@^1.0.0:
|
|
|
|
version "1.6.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
thenify ">= 3.1.0 < 4"
|
|
|
|
|
|
|
|
"thenify@>= 3.1.0 < 4":
|
|
|
|
version "3.3.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f"
|
|
|
|
integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==
|
|
|
|
dependencies:
|
|
|
|
any-promise "^1.0.0"
|
|
|
|
|
|
|
|
tmpl@1.0.5:
|
|
|
|
version "1.0.5"
|
|
|
|
resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
|
|
|
|
integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==
|
|
|
|
|
|
|
|
to-fast-properties@^2.0.0:
|
|
|
|
version "2.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
|
2023-05-08 18:24:09 +01:00
|
|
|
integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
to-regex-range@^5.0.1:
|
|
|
|
version "5.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
|
|
|
|
integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
|
|
|
|
dependencies:
|
|
|
|
is-number "^7.0.0"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
token-types@^5.0.1:
|
2022-09-18 11:57:22 +01:00
|
|
|
version "5.0.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/token-types/-/token-types-5.0.1.tgz#aa9d9e6b23c420a675e55413b180635b86a093b4"
|
|
|
|
integrity sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==
|
|
|
|
dependencies:
|
|
|
|
"@tokenizer/token" "^0.3.0"
|
|
|
|
ieee754 "^1.2.1"
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
ts-essentials@^7.0.3:
|
|
|
|
version "7.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38"
|
|
|
|
integrity sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==
|
|
|
|
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
ts-jest@^29.0.0:
|
|
|
|
version "29.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.1.0.tgz#4a9db4104a49b76d2b368ea775b6c9535c603891"
|
|
|
|
integrity sha512-ZhNr7Z4PcYa+JjMl62ir+zPiNJfXJN6E8hSLnaUKhOgqcn8vb3e537cpkd0FuAfRK3sR1LSqM1MOhliXNgOFPA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
bs-logger "0.x"
|
|
|
|
fast-json-stable-stringify "2.x"
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
jest-util "^29.0.0"
|
|
|
|
json5 "^2.2.3"
|
2022-04-24 14:46:37 +01:00
|
|
|
lodash.memoize "4.x"
|
|
|
|
make-error "1.x"
|
|
|
|
semver "7.x"
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
yargs-parser "^21.0.1"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
ts-mixer@^6.0.3:
|
|
|
|
version "6.0.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/ts-mixer/-/ts-mixer-6.0.3.tgz#69bd50f406ff39daa369885b16c77a6194c7cae6"
|
|
|
|
integrity sha512-k43M7uCG1AkTyxgnmI5MPwKoUvS/bRvLvUb7+Pgpdlmok8AoqmUaZxUUw8zKM5B1lqZrt41GjYgnvAi0fppqgQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
tslib@^2.5.0:
|
|
|
|
version "2.5.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf"
|
|
|
|
integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
type-detect@4.0.8:
|
|
|
|
version "4.0.8"
|
|
|
|
resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
|
|
|
|
integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
|
|
|
|
|
|
|
|
type-fest@^0.21.3:
|
|
|
|
version "0.21.3"
|
|
|
|
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
|
|
|
|
integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
|
|
|
|
|
2023-05-22 00:03:07 +01:00
|
|
|
typeorm@0.3.16:
|
|
|
|
version "0.3.16"
|
|
|
|
resolved "https://registry.yarnpkg.com/typeorm/-/typeorm-0.3.16.tgz#a001d77b36cfaaf9ff495e15805dd17883116b7b"
|
|
|
|
integrity sha512-wJ4Qy1oqRKNDdZiBTTaVMqwo/XxC52Q7uNPTjltPgLhvIW173bL6Iad0lhptMOsFlpixFPaUu3PNziaRBwX2Zw==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
2023-05-08 18:24:09 +01:00
|
|
|
"@sqltools/formatter" "^1.2.5"
|
|
|
|
app-root-path "^3.1.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
buffer "^6.0.3"
|
2023-05-08 18:24:09 +01:00
|
|
|
chalk "^4.1.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
cli-highlight "^2.1.11"
|
2023-05-22 00:03:07 +01:00
|
|
|
date-fns "^2.29.3"
|
2023-05-08 18:24:09 +01:00
|
|
|
debug "^4.3.4"
|
|
|
|
dotenv "^16.0.3"
|
|
|
|
glob "^8.1.0"
|
|
|
|
mkdirp "^2.1.3"
|
2022-04-24 14:46:37 +01:00
|
|
|
reflect-metadata "^0.1.13"
|
|
|
|
sha.js "^2.4.11"
|
2023-05-08 18:24:09 +01:00
|
|
|
tslib "^2.5.0"
|
|
|
|
uuid "^9.0.0"
|
|
|
|
yargs "^17.6.2"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
Update dependency typescript to v5 (#275)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [typescript](https://www.typescriptlang.org/) ([source](https://github.com/Microsoft/TypeScript)) | devDependencies | major | [`^4.5.2` -> `^5.0.0`](https://renovatebot.com/diffs/npm/typescript/4.5.2/5.0.2) |
---
### Release Notes
<details>
<summary>Microsoft/TypeScript</summary>
### [`v5.0.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.0.2): TypeScript 5.0
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.9.5...v5.0.2)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/).
For new features, check out the [What's new in TypeScript v5.0.2]().
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript v5.0.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.0.0%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.0.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.0.1%22+is%3Aclosed+).
- [fixed issues query for Typescript v5.0.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.0.2%22+is%3Aclosed+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.9.5`](https://github.com/microsoft/TypeScript/releases/tag/v4.9.5): TypeScript 4.9.5
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.9.4...v4.9.5)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-9/).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
#### Changes:
- [`69e88ef`](https://github.com/Microsoft/TypeScript/commit/69e88ef5513a81acf69ec78f4af1f927da0d0584) Port ignore deprecations to 4.9 ([#​52419](https://github.com/Microsoft/TypeScript/issues/52419))
- [`daf4e81`](https://github.com/Microsoft/TypeScript/commit/daf4e817a18def96b70ac34703b158ff0e6d58df) Port timestamp fix to 4.9 ([#​52426](https://github.com/Microsoft/TypeScript/issues/52426))
### [`v4.9.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.9.4): TypeScript 4.9.4
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.9.3...v4.9.4)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-9).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript v4.9.4](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+4.9.4%22+is%3Aclosed+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
#### Changes:
- [`e286821`](https://github.com/Microsoft/TypeScript/commit/e2868216f637e875a74c675845625eb15dcfe9a2) Bump version to 4.9.4 and LKG.
- [`eb5419f`](https://github.com/Microsoft/TypeScript/commit/eb5419fc8d980859b98553586dfb5f40d811a745) Cherry-pick [#​51704](https://github.com/Microsoft/TypeScript/issues/51704) to release 4.9 ([#​51712](https://github.com/Microsoft/TypeScript/issues/51712))
- [`b4d382b`](https://github.com/Microsoft/TypeScript/commit/b4d382b9b12460adf2da4cc0d1429cf19f8dc8be) Cherry-pick changes for narrowing to tagged literal types.
- [`e7a02f4`](https://github.com/Microsoft/TypeScript/commit/e7a02f43fce47e1a39259ada5460bcc33c8e98b5) Port of [#​51626](https://github.com/Microsoft/TypeScript/issues/51626) and [#​51689](https://github.com/Microsoft/TypeScript/issues/51689) to release-4.9 ([#​51627](https://github.com/Microsoft/TypeScript/issues/51627))
- [`1727912`](https://github.com/Microsoft/TypeScript/commit/1727912f0437a7f367d90040fc4b0b4f3efd017a) Cherry-pick fix around `visitEachChild` to release-4.9. ([#​51544](https://github.com/Microsoft/TypeScript/issues/51544))
This list of changes was [auto generated](https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/\_release?releaseId=117&\_a=release-summary).
### [`v4.9.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.9.3): TypeScript 4.9
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.8.4...v4.9.3)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-9/).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
#### Changes:
- [`93bd577`](https://github.com/Microsoft/TypeScript/commit/93bd577458d55cd720b2677705feab5c91eb12ce) Bump version to 4.9.3 and LKG.
- [`107f832`](https://github.com/Microsoft/TypeScript/commit/107f832b80df2dc97748021cb00af2b6813db75b) Update LKG.
- [`31bee56`](https://github.com/Microsoft/TypeScript/commit/31bee5682df130a14ffdd5742f994dbe7313dd0e) Cherry-pick PR [#​50977](https://github.com/Microsoft/TypeScript/issues/50977) into release-4.9 ([#​51363](https://github.com/Microsoft/TypeScript/issues/51363)) \[ [#​50872](https://github.com/Microsoft/TypeScript/issues/50872) ]
- [`1e2fa7a`](https://github.com/Microsoft/TypeScript/commit/1e2fa7ae15f8530910fef8b916ec8a4ed0b59c45) Update version to 4.9.2-rc and LKG.
- [`7ab89e5`](https://github.com/Microsoft/TypeScript/commit/7ab89e5c6e401d161f31f28a6c555a3ba530910e) Merge remote-tracking branch 'origin/main' into release-4.9
- [`e5cd686`](https://github.com/Microsoft/TypeScript/commit/e5cd686defb1a4cbdb36bd012357ba5bed28f371) Update package-lock.json
- [`8d40dc1`](https://github.com/Microsoft/TypeScript/commit/8d40dc15d1b9945837e7860320fdccfe27c40cad) Update package-lock.json
- [`5cfb3a2`](https://github.com/Microsoft/TypeScript/commit/5cfb3a2fe344a5350734305193e6cc99516285ca) Only call return() for an abrupt completion in user code ([#​51297](https://github.com/Microsoft/TypeScript/issues/51297))
- [`a7a9d15`](https://github.com/Microsoft/TypeScript/commit/a7a9d158e817fcb0e94dc1c24e0a401b21be0cc9) Fix for broken baseline in yieldInForInInDownlevelGenerator ([#​51345](https://github.com/Microsoft/TypeScript/issues/51345))
- [`7f8426f`](https://github.com/Microsoft/TypeScript/commit/7f8426f4df0d0a7dd8b72079dafc3e60164a23b1) fix for-in enumeration containing yield in generator ([#​51295](https://github.com/Microsoft/TypeScript/issues/51295))
<details><summary><b>See More</b></summary>
- [`3d2b401`](https://github.com/Microsoft/TypeScript/commit/3d2b4017eb6b9a2b94bc673291e56ae95e8beddd) Fix assertion functions accessed via wildcard imports ([#​51324](https://github.com/Microsoft/TypeScript/issues/51324))
- [`64d0d5a`](https://github.com/Microsoft/TypeScript/commit/64d0d5ae140b7b26a09e75114517b418d6bcaa9f) fix(51301): Fixing an unused import at the end of a line removes the newline ([#​51320](https://github.com/Microsoft/TypeScript/issues/51320))
- [`754eeb2`](https://github.com/Microsoft/TypeScript/commit/754eeb2986bde30d5926e0fa99c87dda9266d01b) Update CodeQL workflow and configuration, fix found bugs ([#​51263](https://github.com/Microsoft/TypeScript/issues/51263))
- [`d8aad26`](https://github.com/Microsoft/TypeScript/commit/d8aad262006ad2d2c91aa7a0e4449b4b83c57f7b) Update package-lock.json
- [`d4f26c8`](https://github.com/Microsoft/TypeScript/commit/d4f26c840b1db76c0b25a405c8e73830a2b45cbc) fix(51245): Class with parameter decorator in arrow function causes "convert to default export" refactoring failure ([#​51256](https://github.com/Microsoft/TypeScript/issues/51256))
- [`16faf45`](https://github.com/Microsoft/TypeScript/commit/16faf45682173ea437a50330feb4785578923d7f) Update package-lock.json
- [`8b1ecdb`](https://github.com/Microsoft/TypeScript/commit/8b1ecdb701e2a2e19e9f8bcdd6b2beac087eabee) fix(50654): "Move to a new file" breaks the declaration of referenced variable ([#​50681](https://github.com/Microsoft/TypeScript/issues/50681))
- [`170a17f`](https://github.com/Microsoft/TypeScript/commit/170a17fad57eae619c5ef2b7bdb3ac00d6c32c47) Dom update 2022-10-25 ([#​51300](https://github.com/Microsoft/TypeScript/issues/51300))
- [`9c4e14d`](https://github.com/Microsoft/TypeScript/commit/9c4e14d75174432f6a4dc5967a09712a6784ab88) Remove "No type information for this code" from baseline ([#​51311](https://github.com/Microsoft/TypeScript/issues/51311))
- [`88d25b4`](https://github.com/Microsoft/TypeScript/commit/88d25b4f232929df59729156dfda6b65277affec) fix(50068): Refactors trigger debug failure when JSX text has a ' and a tag on the same line. ([#​51299](https://github.com/Microsoft/TypeScript/issues/51299))
- [`8bee69a`](https://github.com/Microsoft/TypeScript/commit/8bee69acf410d4986cb0cc102b949e2d133d5380) Update package-lock.json
- [`702de1e`](https://github.com/Microsoft/TypeScript/commit/702de1eeaaef88a189e4d06e5a2aae287853790a) Fix early call to return/throw on generator ([#​51294](https://github.com/Microsoft/TypeScript/issues/51294))
- [`2c12b14`](https://github.com/Microsoft/TypeScript/commit/2c12b1499908ad7718e65d20e264561207c22375) Add a GH Action to file a new issue if we go a week without seeing a typescript-error-deltas issue ([#​51271](https://github.com/Microsoft/TypeScript/issues/51271))
- [`6af270d`](https://github.com/Microsoft/TypeScript/commit/6af270dee09d62516f6dc02ec102a745ffebc037) Update package-lock.json
- [`2cc4c16`](https://github.com/Microsoft/TypeScript/commit/2cc4c16a26672a7ba6c97ba16309fcf334db7cae) Update package-lock.json
- [`6093491`](https://github.com/Microsoft/TypeScript/commit/60934915d9ccc4ca9c0fb2cd060d7ec81601942b) Fix apparent typo in getStringMappingType ([#​51248](https://github.com/Microsoft/TypeScript/issues/51248))
- [`61c2609`](https://github.com/Microsoft/TypeScript/commit/61c26096e3373719ece686b84c698423890e9a5f) Update package-lock.json
- [`ef69116`](https://github.com/Microsoft/TypeScript/commit/ef69116c41cb6805f89e6592eacb0ccb7f02207d) Generate shortest `rootDirs` module specifier instead of first possible ([#​51244](https://github.com/Microsoft/TypeScript/issues/51244))
- [`bbb42f4`](https://github.com/Microsoft/TypeScript/commit/bbb42f453dc684e03d977c5b70391124d57543a9) Fix typo in canWatchDirectoryOrFile found by CodeQL ([#​51262](https://github.com/Microsoft/TypeScript/issues/51262))
- [`a56b254`](https://github.com/Microsoft/TypeScript/commit/a56b254ad3c52b598bc5d44f83f3d0a1cf806068) Include 'this' type parameter in isRelatedTo fast path ([#​51230](https://github.com/Microsoft/TypeScript/issues/51230))
- [`3abd351`](https://github.com/Microsoft/TypeScript/commit/3abd351c0eea55758f27ee5558a4a1525b77f45b) Fix super property transform in async arrow in method ([#​51240](https://github.com/Microsoft/TypeScript/issues/51240))
- [`eed0511`](https://github.com/Microsoft/TypeScript/commit/eed05112180e0d94f78aa02d676d49468f15dc31) Update package-lock.json
- [`2625c1f`](https://github.com/Microsoft/TypeScript/commit/2625c1feae25aede35465ca835440fc57bf13d52) Make the init config category order predictable ([#​51247](https://github.com/Microsoft/TypeScript/issues/51247))
- [`1ca99b3`](https://github.com/Microsoft/TypeScript/commit/1ca99b34029dafad2c18af7bdc0711f4abf7e522) fix(50551): Destructuring assignment with var bypasses "variable is used before being assigned" check (2454) ([#​50560](https://github.com/Microsoft/TypeScript/issues/50560))
- [`3f28fa1`](https://github.com/Microsoft/TypeScript/commit/3f28fa12dfecb8dfd66ce4684bf26f64e1f092f1) Update package-lock.json
- [`906ebe4`](https://github.com/Microsoft/TypeScript/commit/906ebe49334a3a9c2dbd73cd3c902898bc712b66) Revert structuredTypeRelatedTo change and fix isUnitLikeType ([#​51076](https://github.com/Microsoft/TypeScript/issues/51076))
- [`8ac4652`](https://github.com/Microsoft/TypeScript/commit/8ac465239f52de1da3ada8cdc4c3f107f4d62e45) change type ([#​51231](https://github.com/Microsoft/TypeScript/issues/51231))
- [`245a02c`](https://github.com/Microsoft/TypeScript/commit/245a02cbed7ad50a21289730159abc8d19a66f40) fix(51222): Go-to-definition on return statements should jump to the containing function declaration ([#​51227](https://github.com/Microsoft/TypeScript/issues/51227))
- [`2dff34e`](https://github.com/Microsoft/TypeScript/commit/2dff34e8c4a91c0005ca9ccfb7e045e225b6f2e4) markAliasReferenced should include ExportValue as well ([#​51219](https://github.com/Microsoft/TypeScript/issues/51219))
- [`5ef2634`](https://github.com/Microsoft/TypeScript/commit/5ef2634f3df138323383c7f2e5a05163a924ee86) Update package-lock.json
- [`d0f0e35`](https://github.com/Microsoft/TypeScript/commit/d0f0e35c88ae017fc4c1213eb2f83303ee22ebde) Remove old tslint comments ([#​51220](https://github.com/Microsoft/TypeScript/issues/51220))
- [`85d405a`](https://github.com/Microsoft/TypeScript/commit/85d405a1d74c0730a9d8d6307b26e8d6f3f75421) Fixed a false positive "await has no effect on the type" diagnostic with mixed generic union ([#​50833](https://github.com/Microsoft/TypeScript/issues/50833))
- [`1f8959f`](https://github.com/Microsoft/TypeScript/commit/1f8959f5dc04b2b2c2fc8a7dc53b6ac761e1f754) fix: avoid downleveled dynamic import closing over specifier expression ([#​49663](https://github.com/Microsoft/TypeScript/issues/49663))
- [`11066b2`](https://github.com/Microsoft/TypeScript/commit/11066b264f5d30fb5ac1f6c2f3a155c0190e75d2) Rename internal functions to `narrowTypeBySwitchOnTypeOf` and `narrowTypeByInKeyword` ([#​51215](https://github.com/Microsoft/TypeScript/issues/51215))
- [`4c9afe8`](https://github.com/Microsoft/TypeScript/commit/4c9afe8812fcdb4658472ccbced4a5cd4bae70ea) Update package-lock.json
- [`f25bcb7`](https://github.com/Microsoft/TypeScript/commit/f25bcb7c27d78ce89e9c9356d27058cf86dbfb5c) fix(49196): add jsdoc snippet for interface member functions ([#​51135](https://github.com/Microsoft/TypeScript/issues/51135))
- [`7406ee9`](https://github.com/Microsoft/TypeScript/commit/7406ee9c145cd7d6117391818d5a1eca2d66ca8f) fix(51170): Completing an unimplemented property overwrites rest of line ([#​51175](https://github.com/Microsoft/TypeScript/issues/51175))
- [`a1d82fc`](https://github.com/Microsoft/TypeScript/commit/a1d82fc9dcced6ca6bde6e21c385d152d083679f) Remove some unnecessary code discovered by rollup ([#​51204](https://github.com/Microsoft/TypeScript/issues/51204))
- [`0481773`](https://github.com/Microsoft/TypeScript/commit/0481773a27fc6a0132c34502fd2a3b0c73cf63a3) LEGO: Merge pull request 51200
- [`98c19cb`](https://github.com/Microsoft/TypeScript/commit/98c19cbbbe83c2ae3c89a4e08317a4b9ccbcb206) LEGO: Merge pull request 51190
- [`13c9b05`](https://github.com/Microsoft/TypeScript/commit/13c9b05384544262363f3fd8b942b36aeb84fc61) Update package-lock.json
- [`673475e`](https://github.com/Microsoft/TypeScript/commit/673475e1c5e582f2fd0bf8d89e33c7708607c8d8) Update package-lock.json
- [`f6cf510`](https://github.com/Microsoft/TypeScript/commit/f6cf51053e024714dd6b8463fe6f8e7e33461e6b) Add more tracing to node16/nodenext resolution ([#​51168](https://github.com/Microsoft/TypeScript/issues/51168))
- [`83c5581`](https://github.com/Microsoft/TypeScript/commit/83c5581588f660247bd9648bafe67b49de060a55) Update package-lock.json
- [`be5f0fe`](https://github.com/Microsoft/TypeScript/commit/be5f0fe5acfed5146514ebe7c1b65529def8e490) Add an extra regression test for awaited unresolvable recursive union ([#​51167](https://github.com/Microsoft/TypeScript/issues/51167))
- [`2cb7e77`](https://github.com/Microsoft/TypeScript/commit/2cb7e779d70d57ef0d46dd3f768e646b8bbe783a) fix(50416): correctly names disabled export refactors ([#​50663](https://github.com/Microsoft/TypeScript/issues/50663)) \[ [#​50416](https://github.com/Microsoft/TypeScript/issues/50416) ]
- [`2bcfed0`](https://github.com/Microsoft/TypeScript/commit/2bcfed01f3458996e71ce37af43e3495cb7e4950) feat(37440): Provide a quick-fix for non-exported types ([#​51038](https://github.com/Microsoft/TypeScript/issues/51038))
- [`a24201c`](https://github.com/Microsoft/TypeScript/commit/a24201c8ef6f82b5729ab677b7a1a1d6d745fcb8) Remove VSDevMode.ps1 and createPlaygroundBuild ([#​51166](https://github.com/Microsoft/TypeScript/issues/51166))
- [`2da62a7`](https://github.com/Microsoft/TypeScript/commit/2da62a784bbba237b8239e84c8629cfafb0f595e) fix(51112): omit parameter names that precede the type ([#​51142](https://github.com/Microsoft/TypeScript/issues/51142))
- [`cf1b6b7`](https://github.com/Microsoft/TypeScript/commit/cf1b6b73330eab2dd484d71cbdb662a83b3c726f) feat(51163): show QF to fill in the missing properties for the mapped type. ([#​51165](https://github.com/Microsoft/TypeScript/issues/51165))
- [`bdcc240`](https://github.com/Microsoft/TypeScript/commit/bdcc240d68245e4be865b385bd6a8fd8fa546f56) Remove bug-causing carve-out in conditional type instantiation that hopefully is no longer required ([#​51151](https://github.com/Microsoft/TypeScript/issues/51151))
- [`37317a2`](https://github.com/Microsoft/TypeScript/commit/37317a208f34c141b64e26d0e92b3aed346e531f) Check nested weak types in intersections on target side of relation ([#​51140](https://github.com/Microsoft/TypeScript/issues/51140))
- [`9f49f9c`](https://github.com/Microsoft/TypeScript/commit/9f49f9ccb05a7bb56b8ca84b8036a3ad4e0e7c2b) Update package-lock.json
- [`4f54e7e`](https://github.com/Microsoft/TypeScript/commit/4f54e7e947298162d29f3104265e74dcfbc90d82) Fix isExhaustiveSwitchStatement to better handle circularities ([#​51095](https://github.com/Microsoft/TypeScript/issues/51095))
- [`503604c`](https://github.com/Microsoft/TypeScript/commit/503604c884bd0557c851b11b699ef98cdb65b93b) Overloads shouldn't gain [@​deprecated](https://github.com/deprecated) tags of other overloads in quick info ([#​50904](https://github.com/Microsoft/TypeScript/issues/50904))
- [`e14a229`](https://github.com/Microsoft/TypeScript/commit/e14a2298c5add93816c6f487bcfc5ac72e3a4c59) Update package-lock.json
- [`67256e5`](https://github.com/Microsoft/TypeScript/commit/67256e50c41aa9178a60c52de8416477f070b190) Remove unused declarations array in extractSymbol's TargetRange ([#​51091](https://github.com/Microsoft/TypeScript/issues/51091))
- [`9c87ded`](https://github.com/Microsoft/TypeScript/commit/9c87ded2b3fc4ba4a9a7656e9be39d5e404e6ab6) fix(51100): ensure tsserver shuts down when parent process is killed ([#​51107](https://github.com/Microsoft/TypeScript/issues/51107))
- [`c01ae01`](https://github.com/Microsoft/TypeScript/commit/c01ae01fac37268bac3362fb6e6d26db730f7ed5) Fix nightly publish oops in Gulpfile ([#​51131](https://github.com/Microsoft/TypeScript/issues/51131))
- [`a7d10f1`](https://github.com/Microsoft/TypeScript/commit/a7d10f15bbd28166b869ae00482214e360891613) Update package-lock.json
- [`d0bfd8c`](https://github.com/Microsoft/TypeScript/commit/d0bfd8caed521bfd24fc44960d9936a891744bb7) fix(51072): ts.preProcessFile finds import in template string after conditional expression with template strings ([#​51082](https://github.com/Microsoft/TypeScript/issues/51082))
- [`ad56b5c`](https://github.com/Microsoft/TypeScript/commit/ad56b5ca56b763ab377e07121ecfebb457a2e810) Convert scripts/Gulpfile to checked mjs/cjs so they can run without compilation ([#​50988](https://github.com/Microsoft/TypeScript/issues/50988))
- [`dbeae5d`](https://github.com/Microsoft/TypeScript/commit/dbeae5d943c784661862c52b8e215a2907c31a33) fix(51017): Make lineText in the references response opt-out ([#​51081](https://github.com/Microsoft/TypeScript/issues/51081))
- [`d06a592`](https://github.com/Microsoft/TypeScript/commit/d06a592d02955822a7407b70969fb7a82bc17d59) Properly defer resolution of mapped types with generic `as` clauses ([#​51050](https://github.com/Microsoft/TypeScript/issues/51050))
- [`42b1049`](https://github.com/Microsoft/TypeScript/commit/42b1049aee8c655631cb4f0065de86ec1023d20a) Update package-lock.json
- [`5f3e6cc`](https://github.com/Microsoft/TypeScript/commit/5f3e6cc4980d26af5d8a8f463e59b2c3338165c6) Plugin probe location is higher priority than peer node_modules ([#​51079](https://github.com/Microsoft/TypeScript/issues/51079)) \[ [#​34616](https://github.com/Microsoft/TypeScript/issues/34616) ]
- [`2648f6a`](https://github.com/Microsoft/TypeScript/commit/2648f6ab09e3176c7da2c07c54066d3a3433a298) Plugins in project were adding up after every config file reload ([#​51087](https://github.com/Microsoft/TypeScript/issues/51087))
- [`c18791c`](https://github.com/Microsoft/TypeScript/commit/c18791ccf165672df3b55f5bdd4a8655f33be26c) Fix incorrect options type to WatchOptions ([#​51064](https://github.com/Microsoft/TypeScript/issues/51064))
- [`b0795e9`](https://github.com/Microsoft/TypeScript/commit/b0795e9c94757a8ee78077d160cde8819a9801ea) Update package-lock.json
- [`43c6fd4`](https://github.com/Microsoft/TypeScript/commit/43c6fd4c09464204bc6a6e1c6c1d32fa12270414) Covert some of the config testing to baselines for easy validation ([#​51063](https://github.com/Microsoft/TypeScript/issues/51063))
- [`fc5e72b`](https://github.com/Microsoft/TypeScript/commit/fc5e72b92cb8ea13c5e0f2cfc35d8b2cbfd1fe36) Remove unused defaultWatchFileKind method since useFsEvents is default for tsserver and tsc ([#​51044](https://github.com/Microsoft/TypeScript/issues/51044))
- [`8af9a93`](https://github.com/Microsoft/TypeScript/commit/8af9a936b5240398370887c22cacaff65fee707b) Use typescript.d.ts in APISample tests ([#​51061](https://github.com/Microsoft/TypeScript/issues/51061))
- [`4953316`](https://github.com/Microsoft/TypeScript/commit/49533168dbb4e19f243b9dbdfd6a3aac69f5b3dd) Remove configureLanguageServiceBuild, instrumenter ([#​51048](https://github.com/Microsoft/TypeScript/issues/51048))
- [`9dfffd0`](https://github.com/Microsoft/TypeScript/commit/9dfffd0fbb406d7f2e5e2ca85768624ca388a7bf) Update GitHub Actions ([#​51045](https://github.com/Microsoft/TypeScript/issues/51045))
- [`4635a5c`](https://github.com/Microsoft/TypeScript/commit/4635a5cef9aefa9aa847ef7ce2e6767ddf4f54c2) Update package-lock.json
- [`33a34e5`](https://github.com/Microsoft/TypeScript/commit/33a34e5b96bfe086266f4765ab9789a2a02507f9) Adding a JSDoc comment to the es5 type declarations to describe the functionality of Date.now() ([#​50630](https://github.com/Microsoft/TypeScript/issues/50630))
- [`299745c`](https://github.com/Microsoft/TypeScript/commit/299745cb217c2fc061f75b3735f8420d78b8360a) Fix crash in goto-def on `@override` ([#​51016](https://github.com/Microsoft/TypeScript/issues/51016))
- [`7dcf11f`](https://github.com/Microsoft/TypeScript/commit/7dcf11f13985be927886ebea353d282a9b3418e0) fix(50750): Object type literal with string literal property in contextual typing position causes language service error on all literal type references ([#​50757](https://github.com/Microsoft/TypeScript/issues/50757))
- [`5cd49f6`](https://github.com/Microsoft/TypeScript/commit/5cd49f6cbcd2effe9d425dee3a39cb49209bb656) Update package-lock.json
- [`8a1b858`](https://github.com/Microsoft/TypeScript/commit/8a1b85880f89c9cff606c5844e8883e5f483c7db) Update package-lock.json
- [`96894db`](https://github.com/Microsoft/TypeScript/commit/96894db6cb5b7af6857b4d0c7f70f7d8ac782d51) Include type parameter defaults in contextual typing ([#​50994](https://github.com/Microsoft/TypeScript/issues/50994)) \[ [#​51002](https://github.com/Microsoft/TypeScript/issues/51002) ]
- [`0d0a793`](https://github.com/Microsoft/TypeScript/commit/0d0a79371471d627ae298a145f8009b05cbccb72) Allow Unicode extended escapes in ES5 and earlier ([#​50918](https://github.com/Microsoft/TypeScript/issues/50918))
- [`58bae8d`](https://github.com/Microsoft/TypeScript/commit/58bae8db69b275a3efa57b14b486778c55185552) Update package-lock.json
- [`0ce72ef`](https://github.com/Microsoft/TypeScript/commit/0ce72ef6c8b39cd2d07e5b0eb3a0c144a7783ad2) Add option to OrganizeImports for removal only ([#​50931](https://github.com/Microsoft/TypeScript/issues/50931))
- [`42f9143`](https://github.com/Microsoft/TypeScript/commit/42f9143e114c5c07f40df83ed07ffeb3cbaf2101) feat: codefix for `for await of` ([#​50623](https://github.com/Microsoft/TypeScript/issues/50623))
- [`ecf50e8`](https://github.com/Microsoft/TypeScript/commit/ecf50e81a7a9cccd9bf5ea7598764082981faab0) Properly compute `SymbolFlags.Optional` for intersected properties ([#​50958](https://github.com/Microsoft/TypeScript/issues/50958))
- [`d1586de`](https://github.com/Microsoft/TypeScript/commit/d1586de0434567b998876929eb8229235b85b350) Fully resolve aliases when checking symbol flags ([#​50853](https://github.com/Microsoft/TypeScript/issues/50853))
- [`45148dd`](https://github.com/Microsoft/TypeScript/commit/45148dd715a7c3776840778b4df41e7e0bd0bf12) Update LKG to 4.8.4 ([#​50987](https://github.com/Microsoft/TypeScript/issues/50987))
- [`9a83f25`](https://github.com/Microsoft/TypeScript/commit/9a83f2551ded0d88a0ba0ec9af260f83eb3568cd) Update package-lock.json
- [`865848f`](https://github.com/Microsoft/TypeScript/commit/865848fcfb9e6ce7dd64be563fc09f83d4bc9df5) Fix `<=` and `>` comparisons when compared against prerelease versions ([#​50915](https://github.com/Microsoft/TypeScript/issues/50915))
- [`fbfe934`](https://github.com/Microsoft/TypeScript/commit/fbfe9340a90777dee03b30f736fab44056123be0) Fix comparability between type parameters related by a union constraint ([#​50978](https://github.com/Microsoft/TypeScript/issues/50978))
- [`b09e93d`](https://github.com/Microsoft/TypeScript/commit/b09e93d3f6d3e999df001b53984954974c25b81f) Merge pull request [#​50041](https://github.com/Microsoft/TypeScript/issues/50041) from microsoft/fix/47969
- [`0ac12bb`](https://github.com/Microsoft/TypeScript/commit/0ac12bbe7a410238ca992a42f41816a97f6906f4) Update package-lock.json
- [`8192d55`](https://github.com/Microsoft/TypeScript/commit/8192d550496d884263e292488e325ae96893dc78) Pick correct compilerOptions when checking if we can share emitSignatures ([#​50910](https://github.com/Microsoft/TypeScript/issues/50910)) \[ [#​50902](https://github.com/Microsoft/TypeScript/issues/50902) ]
- [`16faef1`](https://github.com/Microsoft/TypeScript/commit/16faef1d8d522b66b6c672bdd15b4026e2018a62) During uptodate ness check with buildInfo, check if there are errors explicitly with noEmit ([#​50974](https://github.com/Microsoft/TypeScript/issues/50974)) \[ [#​50959](https://github.com/Microsoft/TypeScript/issues/50959) ]
- [`63791f5`](https://github.com/Microsoft/TypeScript/commit/63791f52d4e7a3bf461b974e94abd8cbb6b546c5) Update package-lock.json
- [`09368bc`](https://github.com/Microsoft/TypeScript/commit/09368bcbaebd157d1e66859ab6f5b30c2fd6eaff) Handle if project for open file will get recollected because of pending cleanup from closed script info ([#​50908](https://github.com/Microsoft/TypeScript/issues/50908)) \[ [#​50868](https://github.com/Microsoft/TypeScript/issues/50868) ]
- [`c81bf4d`](https://github.com/Microsoft/TypeScript/commit/c81bf4d8b0c12410a082d6598fcc24cc721b6e9e) fix(49594): Typescript 4.7.3 bracketed class property compilation error strictPropertyInitialization:true ([#​49619](https://github.com/Microsoft/TypeScript/issues/49619))
- [`bc9cbbe`](https://github.com/Microsoft/TypeScript/commit/bc9cbbef421ae907f7dfd5a84ca69c4f68a8935b) Merge pull request [#​49912](https://github.com/Microsoft/TypeScript/issues/49912) from microsoft/fix/47508
- [`5a10f46`](https://github.com/Microsoft/TypeScript/commit/5a10f46c0028790120cb85c826efa4248707a964) Update package-lock.json
- [`8e71f42`](https://github.com/Microsoft/TypeScript/commit/8e71f429c811ac7811533d7b0e02c32bad5a1b47) Fixing pr comments
- [`c100c64`](https://github.com/Microsoft/TypeScript/commit/c100c6488db0482dcc1455290f456dece91cac0a) Update package-lock.json
- [`2a91107`](https://github.com/Microsoft/TypeScript/commit/2a91107f7548eeb5e32673e76277d27264ea88e2) Update package-lock.json
- [`4ab9e76`](https://github.com/Microsoft/TypeScript/commit/4ab9e76fb748b08712f9d0017dd8f0ba74d1859f) Use paths in package.json 'files' array that work with npm 6 and later. ([#​50930](https://github.com/Microsoft/TypeScript/issues/50930))
- [`549b542`](https://github.com/Microsoft/TypeScript/commit/549b5429d4837344e8c99657109bb6538fd2dbb5) Use paths in package.json 'files' array that work with npm 6 and later.
- [`7f37d25`](https://github.com/Microsoft/TypeScript/commit/7f37d251fc69da34659e4c60792177e1e9a8e7a6) Update version to 4.9.1-beta and LKG.
- [`f16ca7d`](https://github.com/Microsoft/TypeScript/commit/f16ca7dd364e57ee7ce337f987b20dbc1e34941f) Remove 'async' dependency, used only in errorCheck.ts, modernize file ([#​50667](https://github.com/Microsoft/TypeScript/issues/50667))
- [`c6bef3f`](https://github.com/Microsoft/TypeScript/commit/c6bef3f02874bddf6df120aa4f0d130c58478468) LEGO: Merge pull request 50921
- [`6753027`](https://github.com/Microsoft/TypeScript/commit/675302730b8ca525d47c910bf2d3174bd3b66a1b) Update package-lock.json
- [`9740bcc`](https://github.com/Microsoft/TypeScript/commit/9740bcc53418e8792a4dbb978059ff5a02b55c91) Pluralized `hasInvalidatedResolution` -> `hasInvalidatedResolutions` ([#​50912](https://github.com/Microsoft/TypeScript/issues/50912))
- [`84c29cd`](https://github.com/Microsoft/TypeScript/commit/84c29cd576fd1facb9b3a353d5342df04acdb184) 🤖 Pick PR [#​50912](https://github.com/Microsoft/TypeScript/issues/50912) (Pluralized \`hasInvalidatedResolutio...) into release-4.9 ([#​50913](https://github.com/Microsoft/TypeScript/issues/50913))
- [`a26f634`](https://github.com/Microsoft/TypeScript/commit/a26f63424de249bb106804dfc9a024bb525de93e) Merge remote-tracking branch 'origin/main' into release-4.9
- [`a455955`](https://github.com/Microsoft/TypeScript/commit/a455955aac85ecc5b2182fe50b83670188955feb) Make hasInvalidatedResolution non internal for program and add it watchApi ([#​50776](https://github.com/Microsoft/TypeScript/issues/50776)) \[ [#​48057](https://github.com/Microsoft/TypeScript/issues/48057) ]
- [`645d1cd`](https://github.com/Microsoft/TypeScript/commit/645d1cd7c1ee1d65a87b2183b173611467256a09) Fix assert in addIndirectUser in FAR ([#​50905](https://github.com/Microsoft/TypeScript/issues/50905))
- [`bbec17d`](https://github.com/Microsoft/TypeScript/commit/bbec17d9003246fa00d6bf676bb4ce7c54ff2be4) LEGO: Merge pull request 50900
- [`a9ecc67`](https://github.com/Microsoft/TypeScript/commit/a9ecc675d636c3bbca697bc4881b019e8645a7a6) Update package-lock.json
- [`221cf55`](https://github.com/Microsoft/TypeScript/commit/221cf55a21e448bd3fe2cf26a754c9c0dda3dca3) package.json `exports` should have priority over `typesVersions` ([#​50890](https://github.com/Microsoft/TypeScript/issues/50890))
- [`acb8977`](https://github.com/Microsoft/TypeScript/commit/acb89771901f8c81c6046fa7c16361a83388ddab) Remove .github/tsc.json ([#​50664](https://github.com/Microsoft/TypeScript/issues/50664))
- [`7a3de81`](https://github.com/Microsoft/TypeScript/commit/7a3de819bfb93fb27ef7ea8305d2df069866c380) fix(49993): skip the quick fix for an expression with an enum type ([#​50625](https://github.com/Microsoft/TypeScript/issues/50625))
- [`2644f28`](https://github.com/Microsoft/TypeScript/commit/2644f2867734d77a3a3939c55d5cc0a5004df0ed) fix(49200): skip duplicated method declarations ([#​50609](https://github.com/Microsoft/TypeScript/issues/50609))
- [`98652a3`](https://github.com/Microsoft/TypeScript/commit/98652a349a67be718e8e8b5fcf590972eb62a104) Bump version to 4.9.0-beta and LKG.
- [`4d91204`](https://github.com/Microsoft/TypeScript/commit/4d91204c9d9f27756785f62fade44d93824d47f4) fix(37030): Expand Selection in function and arrow function skips body block ([#​50711](https://github.com/Microsoft/TypeScript/issues/50711))
- [`e2dd508`](https://github.com/Microsoft/TypeScript/commit/e2dd5084f75ac37a78102d212b67d36595596137) DOM update 2022/09/21 ([#​50884](https://github.com/Microsoft/TypeScript/issues/50884))
- [`1d9ab83`](https://github.com/Microsoft/TypeScript/commit/1d9ab83914a551936ce5ef80340ee65cfd1422ba) fix(50866): emit modifiers from export declarations ([#​50874](https://github.com/Microsoft/TypeScript/issues/50874))
- [`92a1b12`](https://github.com/Microsoft/TypeScript/commit/92a1b124c178e1ff4871b29cb9abc00307e21742) LEGO: Merge pull request 50877
- [`e383db6`](https://github.com/Microsoft/TypeScript/commit/e383db692eb44561333c1bbe353788b337aebc99) Fix debug.ts \__debugKind check ([#​50871](https://github.com/Microsoft/TypeScript/issues/50871))
- [`01054e0`](https://github.com/Microsoft/TypeScript/commit/01054e05ab7638e96515619c4ce62200fdf4e0fd) Consistently add undefined/missing to optional tuple element types ([#​50831](https://github.com/Microsoft/TypeScript/issues/50831))
- [`d90795e`](https://github.com/Microsoft/TypeScript/commit/d90795e799ca8e41aabd6d0852abb585138200ef) Improve escape sequence handling in private names ([#​50856](https://github.com/Microsoft/TypeScript/issues/50856))
- [`938a69a`](https://github.com/Microsoft/TypeScript/commit/938a69a526166ca4e7880fa140fba432936f0fe3) Fix import statement completions followed by interface declaration ([#​50350](https://github.com/Microsoft/TypeScript/issues/50350))
- [`e002159`](https://github.com/Microsoft/TypeScript/commit/e002159ad133a024bae48a2e190e54ad93f6b52d) feat(49962): Disallow comparison against NaN ([#​50626](https://github.com/Microsoft/TypeScript/issues/50626))
- [`80ae43d`](https://github.com/Microsoft/TypeScript/commit/80ae43d2399503a04651e3705823137d36148b00) Fixing spaces
- [`abc58bd`](https://github.com/Microsoft/TypeScript/commit/abc58bdabcf536bd5204fbc84fb7f45d75f1a9ad) Fixing baseline errors
- [`305f4bd`](https://github.com/Microsoft/TypeScript/commit/305f4bd420bf9edc0239fd3a740aa83fbdeb9ba2) Merge branch 'main' into fix/47969
- [`23746af`](https://github.com/Microsoft/TypeScript/commit/23746af766b53fcc3afecfa16478809a5a36628a) fix(50591): RangeError: Maximum call stack size exceeded ([#​50594](https://github.com/Microsoft/TypeScript/issues/50594))
- [`168186f`](https://github.com/Microsoft/TypeScript/commit/168186f93d23ae59dbea3fea2adba453527343fd) Allow a union property of a private/protected member and an intersection property including that same member ([#​50328](https://github.com/Microsoft/TypeScript/issues/50328))
- [`812ebcf`](https://github.com/Microsoft/TypeScript/commit/812ebcf6e3aebfa72b976a6ae4d65929759a2867) Update package-lock.json
- [`16156b1`](https://github.com/Microsoft/TypeScript/commit/16156b1baf26a39ce428423f7106f3ef2b4e98bb) Add rules from eslint's recommended set that triggered good lints ([#​50422](https://github.com/Microsoft/TypeScript/issues/50422))
- [`a11c416`](https://github.com/Microsoft/TypeScript/commit/a11c41621bbbab100a391dd348651c6661549663) Improve checking of `in` operator ([#​50666](https://github.com/Microsoft/TypeScript/issues/50666))
- [`67f2b62`](https://github.com/Microsoft/TypeScript/commit/67f2b62ed2bd1de0299781ba659fa638346bcecf) Gabritto/jsemitfixsilly ([#​50849](https://github.com/Microsoft/TypeScript/issues/50849))
- [`3014dec`](https://github.com/Microsoft/TypeScript/commit/3014dec8878a9ff8d86186a6ac3fd9fad4f3b739) Don't elide imports when transforming JS files ([#​50404](https://github.com/Microsoft/TypeScript/issues/50404))
- [`57c7aa7`](https://github.com/Microsoft/TypeScript/commit/57c7aa755ca3028ff13eb6a37d91775a6fac71e3) LEGO: Merge pull request 50842
- [`48a8e89`](https://github.com/Microsoft/TypeScript/commit/48a8e8953a1e609970dc85e08f99ac499bfe8356) Improve check of whether type query node possibly contains reference to type parameter ([#​50070](https://github.com/Microsoft/TypeScript/issues/50070))
- [`af9ced1`](https://github.com/Microsoft/TypeScript/commit/af9ced11f50c8ac15079d2f88f8961f1e5b62f7f) LEGO: Merge pull request 50825
- [`a8e13f7`](https://github.com/Microsoft/TypeScript/commit/a8e13f7340c5229426072d443fa511bba82a0054) Fixed an issue with destructured bindings from a generic union constraint not being narrowed correctly ([#​50221](https://github.com/Microsoft/TypeScript/issues/50221))
- [`08af0b6`](https://github.com/Microsoft/TypeScript/commit/08af0b6bf0041fef52ca8c1b69d6d4a3db439196) Update package-lock.json
- [`0df46e8`](https://github.com/Microsoft/TypeScript/commit/0df46e873322b8eeb271a442eaf034d91ae68770) Fix test around RegExp match vs. exec results ([#​50813](https://github.com/Microsoft/TypeScript/issues/50813))
- [`906510e`](https://github.com/Microsoft/TypeScript/commit/906510e0f30590a4c8fdc892905ccb8dbe512e3d) Fixes for pr
- [`2970c5d`](https://github.com/Microsoft/TypeScript/commit/2970c5d1671b2376711cd55594c4597d6da7d8c3) make `RegExpExecArray` always include index 0 ([#​50713](https://github.com/Microsoft/TypeScript/issues/50713))
- [`0507192`](https://github.com/Microsoft/TypeScript/commit/05071920a03f8ea530fe01f79f2537c999ec8b02) Accepting baselines
- [`29e50b3`](https://github.com/Microsoft/TypeScript/commit/29e50b314900d22b08f6472918f59ae2b40aba08) Rewording documentation
- [`01cae69`](https://github.com/Microsoft/TypeScript/commit/01cae69e3403a831bc5c752b95c8b7547dd95821) fix(50796): omit questionToken in object literal method completions ([#​50802](https://github.com/Microsoft/TypeScript/issues/50802))
- [`3b84f76`](https://github.com/Microsoft/TypeScript/commit/3b84f76fb23bd39d14c7243e5cd495fd207916c0) Fix crash caused by incorrect bounds check (regression in 4.8) ([#​50797](https://github.com/Microsoft/TypeScript/issues/50797))
- [`7e51306`](https://github.com/Microsoft/TypeScript/commit/7e51306d30b72ce474054c3f3047f57d90dca41a) Update package-lock.json
- [`8b35c13`](https://github.com/Microsoft/TypeScript/commit/8b35c1300e14ebc026b4f1621db8f6f1bba30833) The error "Object is possibly null or undefined" is ambiguous. ([#​49797](https://github.com/Microsoft/TypeScript/issues/49797))
- [`a3f51b3`](https://github.com/Microsoft/TypeScript/commit/a3f51b3b8278b7dc5f59d83f35458338f57c81c7) Update user baselines +cc [@​sandersn](https://github.com/sandersn) ([#​43554](https://github.com/Microsoft/TypeScript/issues/43554))
- [`ba10a0d`](https://github.com/Microsoft/TypeScript/commit/ba10a0d7c06df259e620645a8d6fd9a5262d8b5d) Removing duplicated code
- [`ec6ae1c`](https://github.com/Microsoft/TypeScript/commit/ec6ae1c4d0f48f15cd01b1502d0b2e5ac387dcf5) Partially revert [#​41044](https://github.com/Microsoft/TypeScript/issues/41044), restoring parameter destructurings in d.ts files ([#​50779](https://github.com/Microsoft/TypeScript/issues/50779))
- [`28232ca`](https://github.com/Microsoft/TypeScript/commit/28232ca4b8833957cdf8d592f085fb80d97ef604) LEGO: Merge pull request 50783
- [`49cfa1d`](https://github.com/Microsoft/TypeScript/commit/49cfa1db17b593191601736a11cbf165d42510a0) Update package-lock.json
- [`4110b80`](https://github.com/Microsoft/TypeScript/commit/4110b80fbb24f2ac6dd284ef3511ca69ac6db517) Fix equality narrowing and comparable relation for intersections with {} ([#​50735](https://github.com/Microsoft/TypeScript/issues/50735))
- [`b23f1d6`](https://github.com/Microsoft/TypeScript/commit/b23f1d6b59beabde1072d14b7fb65781ce209c15) LEGO: Merge pull request 50771
- [`618fb2d`](https://github.com/Microsoft/TypeScript/commit/618fb2d8b92357d564ddb8596296ecaba5468002) Update package-lock.json
- [`08b91f6`](https://github.com/Microsoft/TypeScript/commit/08b91f6b827e9ee98407c0eb969579ab77fa9f0c) fix(50717): tsc crashes when it sees a JSDoc tag inside an [@​override](https://github.com/override) annotation ([#​50724](https://github.com/Microsoft/TypeScript/issues/50724))
- [`60963d7`](https://github.com/Microsoft/TypeScript/commit/60963d7216266bca6ef3236f43913de703fe5c7a) Discriminant of type `never` should never be matched ([#​50755](https://github.com/Microsoft/TypeScript/issues/50755))
- [`e37ea53`](https://github.com/Microsoft/TypeScript/commit/e37ea53715a725dd13699dc1be5190c6ebd0d8f8) Update package-lock.json
- [`a88c366`](https://github.com/Microsoft/TypeScript/commit/a88c36655b575d3039f187e64016b971efc0f173) Fix test baselining for tsserver host timeouts ([#​50748](https://github.com/Microsoft/TypeScript/issues/50748))
- [`6d38487`](https://github.com/Microsoft/TypeScript/commit/6d384876e5adeffd6e04cf4e6dd7ea5fc0dd0584) Fix workflow typo ([#​50746](https://github.com/Microsoft/TypeScript/issues/50746))
- [`6b890f9`](https://github.com/Microsoft/TypeScript/commit/6b890f93c491d3496dfd7909592c1df8a771fcd0) Handle more places where package direcroy is converted to canonical file path ([#​50740](https://github.com/Microsoft/TypeScript/issues/50740))
- [`f5f2923`](https://github.com/Microsoft/TypeScript/commit/f5f2923c7d0f0963a78b9c5f233b635d4e78ae91) Revert removal of nonInferrableAnyType ([#​50691](https://github.com/Microsoft/TypeScript/issues/50691))
- [`7120b52`](https://github.com/Microsoft/TypeScript/commit/7120b520cfe7b92d2b4bbfd679f1f5bd0c559c2c) Update twoslash workflow ([#​50738](https://github.com/Microsoft/TypeScript/issues/50738))
- [`68d526c`](https://github.com/Microsoft/TypeScript/commit/68d526c200a0a5c51024586890b2473c9819c6ea) Don't run linter after tests runs ([#​50597](https://github.com/Microsoft/TypeScript/issues/50597))
- [`8e5e2e0`](https://github.com/Microsoft/TypeScript/commit/8e5e2e08ead119910d6eb177eab9beb84e3ab311) Fix backticks in our JSDoc comments ([#​50737](https://github.com/Microsoft/TypeScript/issues/50737))
- [`a4cabe7`](https://github.com/Microsoft/TypeScript/commit/a4cabe725b413f154f738b48c1fe2f053cff7d26) Support for auto-accessor fields from the Stage 3 Decorators proposal ([#​49705](https://github.com/Microsoft/TypeScript/issues/49705))
- [`7737473`](https://github.com/Microsoft/TypeScript/commit/77374732df82c9d5c1319677dc595868bbc648b5) Update package-lock.json
- [`12ab0fe`](https://github.com/Microsoft/TypeScript/commit/12ab0fea9f45c48ea644c8273bedde235c8bcc61) Update package-lock.json
- [`eb40134`](https://github.com/Microsoft/TypeScript/commit/eb40134373cc524bd15432e15490d4e369754c50) Don't leave space for property access on non-integer literals ([#​50703](https://github.com/Microsoft/TypeScript/issues/50703))
- [`a70bb9d`](https://github.com/Microsoft/TypeScript/commit/a70bb9d3ff102e044e83d2db43e585105e9a1761) Preserve special intersections in mapped types ([#​50704](https://github.com/Microsoft/TypeScript/issues/50704))
- [`1a1c271`](https://github.com/Microsoft/TypeScript/commit/1a1c27167536e005a4d241ef84c43c0c0ca0aaf9) Don't remove space before dot if in property access on numeric literal ([#​50695](https://github.com/Microsoft/TypeScript/issues/50695))
- [`7c918fb`](https://github.com/Microsoft/TypeScript/commit/7c918fb76682e79e8fd460cf1c2da9f2f22c91a3) Baseline host state when baselining tsserver tests ([#​50678](https://github.com/Microsoft/TypeScript/issues/50678))
- [`2f1ba45`](https://github.com/Microsoft/TypeScript/commit/2f1ba45cbaca5e95959f9fd43c42edd64bc5638c) Update LKG and devDep of typescript to v4.8.3 ([#​50689](https://github.com/Microsoft/TypeScript/issues/50689))
- [`be4e9ba`](https://github.com/Microsoft/TypeScript/commit/be4e9bac8ff66174d4e856dae06f69aa4ef7e479) Update package-lock.json
- [`f46a680`](https://github.com/Microsoft/TypeScript/commit/f46a680863d7ecf7b7aa46b5e056acfe702b78bb) Remove error message in node16 ([#​50673](https://github.com/Microsoft/TypeScript/issues/50673))
- [`ab831d0`](https://github.com/Microsoft/TypeScript/commit/ab831d018030304b886590fc4253f9dab593ddb0) Ignore `--help` and `-?` in `tsc init` generated `compilerOptions` ([#​50628](https://github.com/Microsoft/TypeScript/issues/50628))
- [`bb6f36f`](https://github.com/Microsoft/TypeScript/commit/bb6f36f7c80c290b98759823445dae73ebfd3eb2) Forward intersection state flag to conditional type target check ([#​50620](https://github.com/Microsoft/TypeScript/issues/50620))
- [`b58721f`](https://github.com/Microsoft/TypeScript/commit/b58721fe15a9d58aa9c2b53b6e6fdb7966f56d2c) Update package-lock.json
- [`3c3820b`](https://github.com/Microsoft/TypeScript/commit/3c3820b1a4033de90a6f9369b3e714ba58231e99) Simplify CI detection ([#​50661](https://github.com/Microsoft/TypeScript/issues/50661))
- [`9ac1fce`](https://github.com/Microsoft/TypeScript/commit/9ac1fce1175964f71117f6574d96eda127282bf4) Fix eslint not looking at certain scripts, fix lints ([#​50660](https://github.com/Microsoft/TypeScript/issues/50660))
- [`fd05c0c`](https://github.com/Microsoft/TypeScript/commit/fd05c0cc6da676c5b9183ad2a7ced7ce363b855a) Make useFsEvents as default strategy for the watching ([#​50366](https://github.com/Microsoft/TypeScript/issues/50366))
- [`5c2f770`](https://github.com/Microsoft/TypeScript/commit/5c2f770d9714276567e6ef9ec805368756539725) Remove unused cancellation from build ([#​50658](https://github.com/Microsoft/TypeScript/issues/50658))
- [`66fbf05`](https://github.com/Microsoft/TypeScript/commit/66fbf058ece7882f2a964aeeda81bc352e4a6329) Update package-lock.json
- [`7910c50`](https://github.com/Microsoft/TypeScript/commit/7910c509c4545517489d6264571bb6c05248fb4a) Update package-lock.json
- [`fd3a84c`](https://github.com/Microsoft/TypeScript/commit/fd3a84c3f0c80cb201c47399a055625f919a9b91) Report every instance of TS1208 ([#​50101](https://github.com/Microsoft/TypeScript/issues/50101))
- [`62f980a`](https://github.com/Microsoft/TypeScript/commit/62f980aff82ac8b5939bc9b65cf6e55d122b42d9) Check if its same buildinfo only for directly referenced projects and not recursively ([#​50617](https://github.com/Microsoft/TypeScript/issues/50617)) \[ [#​50545](https://github.com/Microsoft/TypeScript/issues/50545) ]
- [`856c7c5`](https://github.com/Microsoft/TypeScript/commit/856c7c5fdd25833dbb0e1e67071200cd706eae4f) Allow `{}` to narrow in same special cases as `unknown` ([#​50601](https://github.com/Microsoft/TypeScript/issues/50601))
- [`854d448`](https://github.com/Microsoft/TypeScript/commit/854d448e5ccf542a05d0b5dcb97e1b925905e258) `in` operator shouldn't narrow `{}` originating in `unknown` ([#​50610](https://github.com/Microsoft/TypeScript/issues/50610))
- [`549e61d`](https://github.com/Microsoft/TypeScript/commit/549e61d0af1ba885be29d69f341e7d3a00686071) Update package-lock.json
- [`bcf9949`](https://github.com/Microsoft/TypeScript/commit/bcf994996ea0ddd8ca7daadd6b5fbc712eb5ce6b) fix(50079): show deprecated on JSX attributes ([#​50084](https://github.com/Microsoft/TypeScript/issues/50084))
- [`5df09a5`](https://github.com/Microsoft/TypeScript/commit/5df09a514c99010d3126d8a9f11aa00ecbd0bd21) Use bidirectional comparability in narrowing ([#​50592](https://github.com/Microsoft/TypeScript/issues/50592))
- [`891cdc5`](https://github.com/Microsoft/TypeScript/commit/891cdc58aa4005d7197e76ec0a48afcbc3b44ac3) Remove unused baselines ([#​50593](https://github.com/Microsoft/TypeScript/issues/50593))
- [`6db2c88`](https://github.com/Microsoft/TypeScript/commit/6db2c882f389c95c526df0e890354205b5696a7d) {} & null and {} & undefined should always be never ([#​50553](https://github.com/Microsoft/TypeScript/issues/50553))
- [`238c341`](https://github.com/Microsoft/TypeScript/commit/238c341701439a95d5eb71a4cf421c0574d0ee47) Defer distributing index over generic object types ([#​50540](https://github.com/Microsoft/TypeScript/issues/50540))
- [`2983092`](https://github.com/Microsoft/TypeScript/commit/298309271bc526b9753c10c1c916bfe9d5c89a8b) Do not canonicalize the file names when getting absolute paths during nodenext resolution ([#​50557](https://github.com/Microsoft/TypeScript/issues/50557)) \[ [#​50544](https://github.com/Microsoft/TypeScript/issues/50544) ]
- [`dcade77`](https://github.com/Microsoft/TypeScript/commit/dcade7732c142abba88eecae78c115fa37b95e01) Update package-lock.json
- [`a9797d2`](https://github.com/Microsoft/TypeScript/commit/a9797d218d34fefc61b823d0e1dd24f6eb5363c8) fix(50340): typeof ... === "undefined" check on discriminated union of undefined and object type doesn't narrow correctly ([#​50344](https://github.com/Microsoft/TypeScript/issues/50344))
- [`43f8ae6`](https://github.com/Microsoft/TypeScript/commit/43f8ae6df4ffefb7e4795808b94bcfbf74628682) Only normalize intersections that include {} ([#​50535](https://github.com/Microsoft/TypeScript/issues/50535))
- [`d293e72`](https://github.com/Microsoft/TypeScript/commit/d293e723a20cdba258238397097e9a4e409bc41f) Rename API to importPlugin ([#​50554](https://github.com/Microsoft/TypeScript/issues/50554))
- [`cd312d3`](https://github.com/Microsoft/TypeScript/commit/cd312d3076c054cdf9ed6f33c2d3e3995bca92eb) Managing control flow
- [`19defbf`](https://github.com/Microsoft/TypeScript/commit/19defbfe576f3f2da32b5372274e4664b66ec00d) Update package-lock.json
- [`f071d30`](https://github.com/Microsoft/TypeScript/commit/f071d303c182c2a776da1471a3ec9ef05297a9d8) Move contributing related info out of README to CONTRIBUTING ([#​50543](https://github.com/Microsoft/TypeScript/issues/50543))
- [`488d0ee`](https://github.com/Microsoft/TypeScript/commit/488d0eebd0556fcc6e5f4cfc69c2ef7e5c2708ed) Retain name and propertyName in declaration emit copies of binding patterns if property name is a keyword ([#​50537](https://github.com/Microsoft/TypeScript/issues/50537))
- [`8b482b5`](https://github.com/Microsoft/TypeScript/commit/8b482b513d87c6fcda8ece18b99f8a01cff5c605) Update package-lock.json
- [`c89f355`](https://github.com/Microsoft/TypeScript/commit/c89f355a41b18c96eccb67dade04fce8c330068b) Remove redundant pretest script ([#​50518](https://github.com/Microsoft/TypeScript/issues/50518))
- [`6d170b4`](https://github.com/Microsoft/TypeScript/commit/6d170b490d5ff5f881f6cbf8cd749e0103ee5d1f) Handle intersections in isGenericTypeWithoutNullableConstraint ([#​50497](https://github.com/Microsoft/TypeScript/issues/50497))
- [`ed6889c`](https://github.com/Microsoft/TypeScript/commit/ed6889cd5b61b9fa5156018362d867def18e281d) LEGO: Merge pull request 50506
- [`29cbfe9`](https://github.com/Microsoft/TypeScript/commit/29cbfe9a2504cfae30bae938bdb2be6081ccc5c8) LEGO: Merge pull request 50493
- [`6faa291`](https://github.com/Microsoft/TypeScript/commit/6faa291b453987192d996517b4376b14980b25c4) LEGO: Merge pull request 50484
- [`71b2ba6`](https://github.com/Microsoft/TypeScript/commit/71b2ba6111e934f2b4ee112bc4d8d2f47ced22f5) Reuse computed type of condition expressions ([#​49881](https://github.com/Microsoft/TypeScript/issues/49881))
- [`8778c1d`](https://github.com/Microsoft/TypeScript/commit/8778c1ded3a1955dce1063d72caf4523bec37c90) Update package-lock.json
- [`4579245`](https://github.com/Microsoft/TypeScript/commit/4579245f36d9c3deccb097da9d5545f9c5c1ab26) fix(50427): allow convert function expressions ([#​50430](https://github.com/Microsoft/TypeScript/issues/50430))
- [`cbc0b17`](https://github.com/Microsoft/TypeScript/commit/cbc0b17eac1fcb011a66f0544c813968cdf065c4) Push package-lock.json updates via typescript-bot token ([#​50476](https://github.com/Microsoft/TypeScript/issues/50476))
- [`bb3a7ae`](https://github.com/Microsoft/TypeScript/commit/bb3a7aec11a20afb30c5098a75e001d1a4eb08f9) fix(50415): Language server debug failure - Did not expect GetAccessor to have an Identifier in its trivia ([#​50470](https://github.com/Microsoft/TypeScript/issues/50470))
- [`3557092`](https://github.com/Microsoft/TypeScript/commit/3557092b1474bc3405a29da93bd15c108ab2f8b3) Rephrase error message to be 100% technically correct ([#​50471](https://github.com/Microsoft/TypeScript/issues/50471))
- [`71d1911`](https://github.com/Microsoft/TypeScript/commit/71d19115031ae1c48fa34a24636dfae5e87e1b08) add unknown to DateTimeFormatTypes ([#​50402](https://github.com/Microsoft/TypeScript/issues/50402))
- [`8f89599`](https://github.com/Microsoft/TypeScript/commit/8f895997d2cb79deb937d50fa1bed1c470528025) Don't include .gitattributes in package ([#​50475](https://github.com/Microsoft/TypeScript/issues/50475))
- [`6e8337e`](https://github.com/Microsoft/TypeScript/commit/6e8337ef70e4a36a4df76a3362a41cbcac0dcb84) Optimize substitution types ([#​50397](https://github.com/Microsoft/TypeScript/issues/50397))
- [`226dd0b`](https://github.com/Microsoft/TypeScript/commit/226dd0b7bf5cb5e5bb4dc34ab0e8e14f408f3e20) Fix typechecking related lints that changed post 4.8, update LKG to 4.8.2 ([#​50472](https://github.com/Microsoft/TypeScript/issues/50472))
- [`164dddc`](https://github.com/Microsoft/TypeScript/commit/164dddc48e1eaa83780b8e72bc7afeebe768437b) feat(7481): Operator to ensure an expression is contextually typed by, and satisfies, some type ([#​46827](https://github.com/Microsoft/TypeScript/issues/46827))
- [`0715791`](https://github.com/Microsoft/TypeScript/commit/07157914eb26a6e9abdcda7255c4094c9efff4cd) Update package-lock.json
- [`e675ea8`](https://github.com/Microsoft/TypeScript/commit/e675ea8dd83aaed018a67534323305c36d373b40) Remove AUTHORS.md, .mailmap, authors.ts script ([#​50410](https://github.com/Microsoft/TypeScript/issues/50410))
- [`38076df`](https://github.com/Microsoft/TypeScript/commit/38076df3465af555051db06006bbf30323af0e2d) Fix auto import crash due to difference in `paths` handling ([#​50419](https://github.com/Microsoft/TypeScript/issues/50419))
- [`12eb519`](https://github.com/Microsoft/TypeScript/commit/12eb519b3f81d0999bbc4ce9a845744f4dfc215e) fix(50435): Duplicate seeming Code Actions for convert const to let ([#​50442](https://github.com/Microsoft/TypeScript/issues/50442))
- [`a08b045`](https://github.com/Microsoft/TypeScript/commit/a08b045d2b22c87a6341a0c1d1318271d14acc86) Jsdoc property description ([#​50269](https://github.com/Microsoft/TypeScript/issues/50269)) \[ [#​47933](https://github.com/Microsoft/TypeScript/issues/47933) ]
- [`5ba22e0`](https://github.com/Microsoft/TypeScript/commit/5ba22e05a96538498a78ab206e1b9892f420e7a1) Remove top level loc folder ([#​50421](https://github.com/Microsoft/TypeScript/issues/50421))
- [`c4eb37c`](https://github.com/Microsoft/TypeScript/commit/c4eb37c8a0d5915d64e3992a91a34724aab19fe6) Update package-lock.json
- [`8d7ad8c`](https://github.com/Microsoft/TypeScript/commit/8d7ad8c3aee4130e2b8cc6438e03e12a39cd398a) fix(50375): Errors for missing enum-named properties should attempt to preserve names ([#​50382](https://github.com/Microsoft/TypeScript/issues/50382))
- [`fb717df`](https://github.com/Microsoft/TypeScript/commit/fb717df6bf85318c3d1e833a1dde6789d394cdb2) Discard union types before considering weak type checks on unit-like types ([#​50423](https://github.com/Microsoft/TypeScript/issues/50423))
- [`b9a5bbc`](https://github.com/Microsoft/TypeScript/commit/b9a5bbc9afe9fa231aba5162c258bf1e2fa1e82e) Syntax operations also need to ensure project is present for the open script infos since update could be pending to make sure open script info has project ([#​50418](https://github.com/Microsoft/TypeScript/issues/50418)) \[ [#​50131](https://github.com/Microsoft/TypeScript/issues/50131) ]
- [`1d4fbbb`](https://github.com/Microsoft/TypeScript/commit/1d4fbbb529d183b1e6988447e6744cfa7750b9f6) Update package-lock.json
- [`44ce3cf`](https://github.com/Microsoft/TypeScript/commit/44ce3cff70cb79d1a45b48def04413db5303a151) fix(50224): Intellisense for strings within a type's Union doesn't work properly for JSX ([#​50231](https://github.com/Microsoft/TypeScript/issues/50231))
- [`6ee5db9`](https://github.com/Microsoft/TypeScript/commit/6ee5db95c2ad4fee74ad02368afa1d2cc693407e) Use package.json files array instead of .npmignore ([#​50408](https://github.com/Microsoft/TypeScript/issues/50408))
This list of changes was [auto generated](https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/\_release?releaseId=116&\_a=release-summary).</details>
### [`v4.8.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.8.4): TypeScript 4.8.4
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.8.3...v4.8.4)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.8.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.0%22+).
- [fixed issues query for Typescript 4.8.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.1%22+).
- [fixed issues query for Typescript 4.8.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.2%22+).
- [fixed issues query for Typescript 4.8.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.3%22+).
- [fixed issues query for Typescript 4.8.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.4%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-484) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.8.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.8.3): TypeScript 4.8.3
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.8.2...v4.8.3)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.8.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.0%22+).
- [fixed issues query for Typescript 4.8.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.1%22+).
- [fixed issues query for Typescript 4.8.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.2%22+).
- [fixed issues query for Typescript 4.8.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.3%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-483) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.8.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.8.2): TypeScript 4.8
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.7.4...v4.8.2)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-8/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.8.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.0%22+).
- [fixed issues query for Typescript 4.8.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.1%22+).
- [fixed issues query for Typescript 4.8.1 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.8.2%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-48) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.7.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.7.4): TypeScript 4.7.4
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.7.3...v4.7.4)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.7.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.0%22+).
- [fixed issues query for Typescript 4.7.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.1%22+).
- [fixed issues query for Typescript 4.7.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.2%22+).
- [fixed issues query for Typescript 4.7.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.3%22+).
- [fixed issues query for Typescript 4.7.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.4%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-474) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.7.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.7.3): TypeScript 4.7.3
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.7.2...v4.7.3)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.7.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.0%22+).
- [fixed issues query for Typescript 4.7.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.1%22+).
- [fixed issues query for Typescript 4.7.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.2%22+).
- [fixed issues query for Typescript 4.7.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.3%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-473) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.7.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.7.2): TypeScript 4.7.2
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.6.4...v4.7.2)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.7.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.0%22+).
- [fixed issues query for Typescript 4.7.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.1%22+).
- [fixed issues query for Typescript 4.7.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.7.2%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-472) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.6.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.6.4): TypeScript 4.6.4
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.6.3...v4.6.4)
This release includes [a bug fix for text formatting on certain ranges](Studiohttps://github.com/microsoft/TypeScript/pull/48463), which was impacting Visual Studio users.
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.6.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.0%22+).
- [fixed issues query for Typescript 4.6.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.1%22+).
- [fixed issues query for Typescript 4.6.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.2%22+).
- [fixed issues query for Typescript 4.6.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.3%22+).
- [fixed issues query for Typescript 4.6.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.4%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-464) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.6.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.6.3): TypeScript 4.6.3
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.6.2...v4.6.3)
This release includes fixes for
- [an incremental parsing bug caused by faulty error recovery logic](https://github.com/microsoft/TypeScript/issues/47895)
- [improved results from the TypeScript API's `preProcessFile` function](https://github.com/microsoft/TypeScript/pull/47657)
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.6.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.0%22+).
- [fixed issues query for Typescript 4.6.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.1%22+).
- [fixed issues query for Typescript 4.6.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.2%22+).
- [fixed issues query for Typescript 4.6.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.3%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
### [`v4.6.2`](https://github.com/microsoft/TypeScript/releases/tag/v4.6.2): TypeScript 4.6.2
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.5...v4.6.2)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-6/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.6.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.0%22+).
- [fixed issues query for Typescript 4.6.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.1%22+).
- [fixed issues query for Typescript 4.6.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.6.2%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [Visual Studio 2022/2019](https://marketplace.visualstudio.com/items?itemName=TypeScriptTeam.TypeScript-46) ([Select new version in project options](https://github.com/Microsoft/TypeScript/wiki/Updating-TypeScript-in-Visual-Studio-2017))
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.5.5`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.5): TypeScript 4.5.5
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.4...v4.5.5)
This [patch release](https://github.com/microsoft/TypeScript/issues?q=is%3Aissue+milestone%3A%22TypeScript+4.5.5%22+is%3Aclosed) includes a number of fixes to language service crashes and assertion violations, along with improvements to JSX attribute snippets.
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+).
- [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+).
- [fixed issues query for Typescript 4.5.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+).
- [fixed issues query for Typescript 4.5.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.3%22+).
- [fixed issues query for Typescript 4.5.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.4%22+).
- [fixed issues query for Typescript 4.5.5 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.5%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
<!-- * [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) -->
### [`v4.5.4`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.4): TypeScript 4.5.4
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.3...v4.5.4)
This patch release includes a fix for [incorrectly offering up JSX attribute snippet completions at the beginning of a tag name](https://github.com/microsoft/TypeScript/issues/47090).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+).
- [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+).
- [fixed issues query for Typescript 4.5.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+).
- [fixed issues query for Typescript 4.5.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.3%22+).
- - [fixed issues query for Typescript 4.5.4 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.4%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
### [`v4.5.3`](https://github.com/microsoft/TypeScript/releases/tag/v4.5.3): TypeScript 4.5.3
[Compare Source](https://github.com/Microsoft/TypeScript/compare/v4.5.2...v4.5.3)
For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-5/).
For the complete list of fixed issues, check out the
- [fixed issues query for Typescript 4.5.0 (Beta)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.0%22+).
- [fixed issues query for Typescript 4.5.1 (RC)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.1%22+).
- [fixed issues query for Typescript 4.5.2 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.2%22+).
- [fixed issues query for Typescript 4.5.3 (Stable)](https://github.com/microsoft/TypeScript/issues?q=milestone%3A%22TypeScript+4.5.3%22+).
Downloads are available on:
- [npm](https://www.npmjs.com/package/typescript)
- [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/275
Reviewed-by: Vylpes <ethan@vylpes.com>
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-20 18:02:12 +00:00
|
|
|
typescript@^5.0.0:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "5.0.4"
|
|
|
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b"
|
|
|
|
integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
undici@^5.22.0:
|
|
|
|
version "5.22.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/undici/-/undici-5.22.0.tgz#5e205d82a5aecc003fc4388ccd3d2c6e8674a0ad"
|
|
|
|
integrity sha512-fR9RXCc+6Dxav4P9VV/sp5w3eFiSdOjJYsbtWfd4s5L5C4ogyuVpdKIVHeW0vV1MloM65/f7W45nR9ZxwVdyiA==
|
|
|
|
dependencies:
|
|
|
|
busboy "^1.6.0"
|
2022-09-18 11:57:22 +01:00
|
|
|
|
2023-05-08 18:24:09 +01:00
|
|
|
update-browserslist-db@^1.0.10:
|
|
|
|
version "1.0.11"
|
|
|
|
resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940"
|
|
|
|
integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
escalade "^3.1.1"
|
|
|
|
picocolors "^1.0.0"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2022-09-18 11:57:22 +01:00
|
|
|
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "1.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
2023-05-08 18:33:23 +01:00
|
|
|
integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2022-12-28 18:52:33 +00:00
|
|
|
uuid@^9.0.0:
|
|
|
|
version "9.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5"
|
|
|
|
integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
v8-to-istanbul@^9.0.1:
|
2023-05-08 18:33:23 +01:00
|
|
|
version "9.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265"
|
|
|
|
integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
"@jridgewell/trace-mapping" "^0.3.12"
|
2022-04-24 14:46:37 +01:00
|
|
|
"@types/istanbul-lib-coverage" "^2.0.1"
|
|
|
|
convert-source-map "^1.6.0"
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
walker@^1.0.8:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "1.0.8"
|
|
|
|
resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
|
|
|
|
integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
|
|
|
|
dependencies:
|
|
|
|
makeerror "1.0.12"
|
|
|
|
|
|
|
|
which@^2.0.1:
|
|
|
|
version "2.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
|
|
|
|
integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
|
|
|
|
dependencies:
|
|
|
|
isexe "^2.0.0"
|
|
|
|
|
|
|
|
wrap-ansi@^7.0.0:
|
|
|
|
version "7.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
|
|
|
|
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
|
|
|
|
dependencies:
|
|
|
|
ansi-styles "^4.0.0"
|
|
|
|
string-width "^4.1.0"
|
|
|
|
strip-ansi "^6.0.0"
|
|
|
|
|
|
|
|
wrappy@1:
|
|
|
|
version "1.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
2022-07-06 12:12:00 +01:00
|
|
|
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
write-file-atomic@^4.0.2:
|
|
|
|
version "4.0.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd"
|
|
|
|
integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==
|
2022-04-24 14:46:37 +01:00
|
|
|
dependencies:
|
|
|
|
imurmurhash "^0.1.4"
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
signal-exit "^3.0.7"
|
2022-04-24 14:46:37 +01:00
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
ws@^8.13.0:
|
|
|
|
version "8.13.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0"
|
|
|
|
integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==
|
2022-04-24 14:46:37 +01:00
|
|
|
|
|
|
|
y18n@^5.0.5:
|
|
|
|
version "5.0.8"
|
|
|
|
resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
|
|
|
|
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
|
|
|
|
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
yallist@^3.0.2:
|
|
|
|
version "3.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
|
|
|
|
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
|
|
|
|
|
2022-04-24 14:46:37 +01:00
|
|
|
yallist@^4.0.0:
|
|
|
|
version "4.0.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
|
|
|
|
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
|
|
|
|
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
yargs-parser@^20.2.2:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "20.2.9"
|
|
|
|
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
|
|
|
|
integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
|
|
|
|
|
Update dependency ts-jest to v29 (#244)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | dependencies | major | [`^27.1.2` -> `^29.0.0`](https://renovatebot.com/diffs/npm/ts-jest/27.1.5/29.1.0) |
---
### Release Notes
<details>
<summary>kulshekhar/ts-jest</summary>
### [`v29.1.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#​4064](https://github.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://github.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#​4048](https://github.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://github.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://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://github.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://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://github.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://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://github.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://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://github.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://github.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://github.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#​3966](https://github.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://github.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#​3976](https://github.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://github.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#​3842](https://github.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://github.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#​3841](https://github.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#​3833](https://github.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://github.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#​3792](https://github.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://github.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#​3816](https://github.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://github.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#​3815](https://github.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#​3825](https://github.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://github.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#​3803](https://github.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://github.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#​3805](https://github.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://github.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#​3787](https://github.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://github.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#​3780](https://github.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://github.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#​3767](https://github.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://github.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.
### [`v28.0.8`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2808-httpsgithubcomkulshekharts-jestcomparev2807v2808-2022-08-14)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)
##### Bug Fixes
- allow `.mts` to be processed ([#​3713](https://github.com/kulshekhar/ts-jest/issues/3713)) ([effae71](https://github.com/kulshekhar/ts-jest/commit/effae717369860e16cb0ccbf24027651493b9bf1)), closes [#​3702](https://github.com/kulshekhar/ts-jest/issues/3702)
### [`v28.0.7`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2807-httpsgithubcomkulshekharts-jestcomparev2806v2807-2022-07-15)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.6...v28.0.7)
##### Bug Fixes
- update `@jest/types` to be an optional peer dependency ([#​3690](https://github.com/kulshekhar/ts-jest/issues/3690)) ([8a8c3fa](https://github.com/kulshekhar/ts-jest/commit/8a8c3fafecffd19380171c661e94246024cae2ff)), closes [#​3689](https://github.com/kulshekhar/ts-jest/issues/3689)
### [`v28.0.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2806-httpsgithubcomkulshekharts-jestcomparev2805v2806-2022-07-13)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.5...v28.0.6)
##### Bug Fixes
- **config:** don't show diagnostics warning with `diagnostics: false` ([#​3647](https://github.com/kulshekhar/ts-jest/issues/3647)) ([9a9bc02](https://github.com/kulshekhar/ts-jest/commit/9a9bc02935968fb5eb9fd3614a1f7cce019b80d8)), closes [#​3638](https://github.com/kulshekhar/ts-jest/issues/3638)
- **legacy:** add `useCaseSensitiveFileNames` wherever needed ([#​3683](https://github.com/kulshekhar/ts-jest/issues/3683)) ([c40bc34](https://github.com/kulshekhar/ts-jest/commit/c40bc34625d63cccc0db7296e616af27868fe1fe)), closes [#​3665](https://github.com/kulshekhar/ts-jest/issues/3665)
- set `@jest/types` as peer dependency ([#​3633](https://github.com/kulshekhar/ts-jest/issues/3633)) ([24567e1](https://github.com/kulshekhar/ts-jest/commit/24567e13d2780ad8a11c7ff35f9151ec53f8c211))
### [`v28.0.5`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2805-httpsgithubcomkulshekharts-jestcomparev2804v2805-2022-06-11)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.4...v28.0.5)
##### Bug Fixes
- **legacy:** throw type check error in ESM mode with `reject` ([#​3618](https://github.com/kulshekhar/ts-jest/issues/3618)) ([7dd01ff](https://github.com/kulshekhar/ts-jest/commit/7dd01ffe0c7ad3add87b11227964544f2586355a)), closes [#​3507](https://github.com/kulshekhar/ts-jest/issues/3507)
### [`v28.0.4`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2804-httpsgithubcomkulshekharts-jestcomparev2803v2804-2022-06-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.3...v28.0.4)
##### Bug Fixes
- remove `@types/jest` from peer deps ([#​3592](https://github.com/kulshekhar/ts-jest/issues/3592)) ([b66b656](https://github.com/kulshekhar/ts-jest/commit/b66b656e0f29eea9234a4d1e883c6d249437f03c))
### [`v28.0.3`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2803-httpsgithubcomkulshekharts-jestcomparev2802v2803-2022-05-23)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.2...v28.0.3)
##### Bug Fixes
- **security:** update version of `json5` ([#​3528](https://github.com/kulshekhar/ts-jest/issues/3528)) ([b31f5ba](https://github.com/kulshekhar/ts-jest/commit/b31f5bab142466fd8b6157ec03eff7316584e51d))
### [`v28.0.2`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2802-httpsgithubcomkulshekharts-jestcomparev2801v2802-2022-05-07)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.1...v28.0.2)
##### Bug Fixes
- **transformers:** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/issues/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), closes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
### [`v28.0.1`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2801-httpsgithubcomkulshekharts-jestcomparev2800v2801-2022-05-03)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v28.0.0...v28.0.1)
##### Bug Fixes
- lower the required node version to ^16.10 ([#​3495](https://github.com/kulshekhar/ts-jest/issues/3495)) ([3a4e48a](https://github.com/kulshekhar/ts-jest/commit/3a4e48afffa56f76efb98f48ad3e07a92731748e)), closes [#​3494](https://github.com/kulshekhar/ts-jest/issues/3494)
### [`v28.0.0`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#​2800-httpsgithubcomkulshekharts-jestcomparev2800-next3v2800-2022-05-02)
[Compare Source](https://github.com/kulshekhar/ts-jest/compare/v27.1.5...v28.0.0)
##### Bug Fixes
- **legacy** invoke Babel `processAsync` for `babel-jest` in ESM mode instead of `process` ([#​3430](https://github.com/kulshekhar/ts-jest/issues/3430)) ([0d7356c](https://github.com/kulshekhar/ts-jest/commit/0d7356cd767a924e5b57e3a93679eef4ca8fae51))
##### Features
- **presets:** add presets for legacy mode ([#​3465](https://github.com/kulshekhar/ts-jest/issues/3465)) ([543b4ad](https://github.com/kulshekhar/ts-jest/commit/543b4ad729d20fbd46a2de5cd4660dc50b94ebe7))
- mark `ConfigSet` as legacy ([#​3456](https://github.com/kulshekhar/ts-jest/issues/3456)) ([a986729](https://github.com/kulshekhar/ts-jest/commit/a98672977a679d1ed882605a3e71ed405432ffdc))
- mark `TsCompiler` and `TsJestCompiler` as legacy ([#​3457](https://github.com/kulshekhar/ts-jest/issues/3457)) ([0f2fe30](https://github.com/kulshekhar/ts-jest/commit/0f2fe306762d8549bd29737becd4aed14a650427))
- remove `path-mapping` AST transformer ([#​3455](https://github.com/kulshekhar/ts-jest/issues/3455)) ([f566869](https://github.com/kulshekhar/ts-jest/commit/f5668698f8fab78b3008d936aa5001f134f530e2))
- set Jest peer dependencies to v28 ([#​3454](https://github.com/kulshekhar/ts-jest/issues/3454)) ([1e880ff](https://github.com/kulshekhar/ts-jest/commit/1e880fffe82bca231d1d23f6508f4ab4bc31e03e))
- **core:** drop support for Node.js 10 ([#​3332](https://github.com/kulshekhar/ts-jest/issues/3332)) ([7a9aa61](https://github.com/kulshekhar/ts-jest/commit/7a9aa615ea0be881105676a17d5bd655afdc27f5))
- **core:** remove `mocked` testing util ([#​3333](https://github.com/kulshekhar/ts-jest/issues/3333)) ([2d9017d](https://github.com/kulshekhar/ts-jest/commit/2d9017ddfea39f45aa991876b314d1dbe4a36aad))
- **core:** remove `ts-jest/utils` sub path export ([#​3334](https://github.com/kulshekhar/ts-jest/issues/3334)) ([9f253d3](https://github.com/kulshekhar/ts-jest/commit/9f253d31dfcefa35ae00049d0d2dc4a3fe1b2f34))
- mark `TsJestTransformer` as legacy ([#​3451](https://github.com/kulshekhar/ts-jest/issues/3451)) ([b090179](https://github.com/kulshekhar/ts-jest/commit/b0901799adc519959a954dba5e7b8fc8b97a9665))
##### BREAKING CHANGES
- `path-mapping` AST transformer is no longer shipped in `ts-jest` v28. Please use an alternative one like https://github.com/LeDDGroup/typescript-transform-paths instead.
- Any imports `ts-jest/dist/compiler/ts-compiler` should change to `ts-jest/dist/legacy/compiler/ts-compiler`
- Any imports `ts-jest/dist/compiler/ts-jest-compiler` should change to `ts-jest/dist/legacy/compiler/ts-jest-compiler`
- Any imports `ts-jest/dist/config/config-set` should change to `ts-jest/dist/legacy/config/config-set`
- Minimum support `TypeScript` version is now **4.3** since Jest 28 requires it.
- **Jest 28** is required.
- **core:** Any imports `ts-jest/utils` should be replaced with `ts-jest`.
- **core:** Starting from Jest 27.4, `mocked` has been integrated into Jest repo.
- **core:** Support for Node.js v10 has been removed as Jest drops support for it.
#### [27.1.5](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-05-17)
##### Bug Fixes
- **transformers** use `Array.sort` in hoisting transformer ([#​3498](https://github.com/kulshekhar/ts-jest/pull/3498)) ([e400a6e](https://github.com/kulshekhar/ts-jest/commit/e400a6ec0e4706f606ae9b1e2897b0bb1cff6343)), fixes [#​3476](https://github.com/kulshekhar/ts-jest/issues/3476)
#### [27.1.4](https://github.com/kulshekhar/ts-jest/compare/v27.1.3...v27.1.4) (2022-03-24)
##### Bug Fixes
- **compiler:** revert [#​3194](https://github.com/kulshekhar/ts-jest/issues/3194) ([#​3362](https://github.com/kulshekhar/ts-jest/issues/3362)) ([2b7dffe](https://github.com/kulshekhar/ts-jest/commit/2b7dffeac940f779922c43cefba3f741a3911b49)), closes [#​3272](https://github.com/kulshekhar/ts-jest/issues/3272)
- remove `esbuild` from peer dependency ([#​3360](https://github.com/kulshekhar/ts-jest/issues/3360)) ([8c8c1ca](https://github.com/kulshekhar/ts-jest/commit/8c8c1ca615b1edeedc9f4282557c28e82acee543)), closes [#​3346](https://github.com/kulshekhar/ts-jest/issues/3346)
- support Babel config file with `.cjs` extension ([#​3361](https://github.com/kulshekhar/ts-jest/issues/3361)) ([5e5ac4a](https://github.com/kulshekhar/ts-jest/commit/5e5ac4ac286bdcce157d0bdc31f3a57202fdbdfe)), closes [#​3335](https://github.com/kulshekhar/ts-jest/issues/3335)
#### [27.1.3](https://github.com/kulshekhar/ts-jest/compare/v27.1.2...v27.1.3) (2022-01-14)
##### Bug Fixes
- **compiler:** update memory cache for compiler using received file content ([#​3194](https://github.com/kulshekhar/ts-jest/issues/3194)) ([e4d9541](https://github.com/kulshekhar/ts-jest/commit/e4d9541f262ca14cb25563c757c0f2345dbf5c51))
#### [27.1.2](https://github.com/kulshekhar/ts-jest/compare/v27.1.1...v27.1.2) (2021-12-15)
##### Bug Fixes
- stimulate `esbuild` type to avoid importing `esbuild` directly ([#​3147](https://github.com/kulshekhar/ts-jest/issues/3147)) ([9ace0a9](https://github.com/kulshekhar/ts-jest/commit/9ace0a9991da8bcb0f04a2e603f7601d6fb630e7))
#### [27.1.1](https://github.com/kulshekhar/ts-jest/compare/v27.1.0...v27.1.1) (2021-12-07)
##### Bug Fixes
- bring back `afterProcess` hook ([#​3132](https://github.com/kulshekhar/ts-jest/issues/3132)) ([2b6b86e](https://github.com/kulshekhar/ts-jest/commit/2b6b86e01dcd3d9d9906f24fe3db5cadb799146a))
- make `esbuild` as optional peer dependency ([#​3129](https://github.com/kulshekhar/ts-jest/pull/3129)) ([20258de](https://github.com/kulshekhar/ts-jest/commit/20258de54c9c10f8d2495bda174f9865a3cebc91))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/244
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-05-15 18:20:36 +01:00
|
|
|
yargs-parser@^21.0.1, yargs-parser@^21.1.1:
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
version "21.1.1"
|
|
|
|
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
|
|
|
|
integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
|
|
|
|
|
|
|
|
yargs@^16.0.0:
|
2022-04-24 14:46:37 +01:00
|
|
|
version "16.2.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
|
|
|
|
integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
|
|
|
|
dependencies:
|
|
|
|
cliui "^7.0.2"
|
|
|
|
escalade "^3.1.1"
|
|
|
|
get-caller-file "^2.0.5"
|
|
|
|
require-directory "^2.1.1"
|
|
|
|
string-width "^4.2.0"
|
|
|
|
y18n "^5.0.5"
|
|
|
|
yargs-parser "^20.2.2"
|
|
|
|
|
2023-05-08 18:33:23 +01:00
|
|
|
yargs@^17.3.1, yargs@^17.6.2:
|
2023-05-08 18:24:09 +01:00
|
|
|
version "17.7.2"
|
|
|
|
resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269"
|
|
|
|
integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
|
Update dependency jest to v29 (#241)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [jest](https://jestjs.io/) ([source](https://github.com/facebook/jest)) | dependencies | major | [`^27.4.5` -> `^29.0.0`](https://renovatebot.com/diffs/npm/jest/27.4.5/29.5.0) |
| [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | dependencies | major | [`^27.0.3` -> `^29.0.0`](https://renovatebot.com/diffs/npm/@types%2fjest/27.0.3/29.5.0) |
---
### Release Notes
<details>
<summary>facebook/jest</summary>
### [`v29.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2950)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#​13941](https://github.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://github.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://github.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#​13970](https://github.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#​13875](https://github.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://github.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://github.com/facebook/jest/pull/13946) & [#​13947](https://github.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://github.com/facebook/jest/pull/13935) & [#​13966](https://github.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://github.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://github.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://github.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#​13975](https://github.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#​13937](https://github.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#​13982](https://github.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#​13952](https://github.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#​13915](https://github.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#​13830](https://github.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://github.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#​13972](https://github.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#​13960](https://github.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#​13950](https://github.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#​13977](https://github.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2943)
[Compare Source](https://github.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#​13606](https://github.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#​13846](https://github.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://github.com/facebook/jest/pull/13868) & [#​13912](https://github.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#​13911](https://github.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#​13824](https://github.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#​13867](https://github.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#​13888](https://github.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#​13866](https://github.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2942)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#​13847](https://github.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#​13856](https://github.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#​13853](https://github.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#​13543](https://github.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#​13832](https://github.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#​13857](https://github.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2941)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#​13817](https://github.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#​13626](https://github.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#​13810](https://github.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#​13823](https://github.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#​13756](https://github.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2940)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @​jest/expect-utils]` Support custom equality testers ([#​13654](https://github.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#​13738](https://github.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#​13496](https://github.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#​13674](https://github.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#​13705](https://github.com/facebook/jest/pull/13705), [#​13723](https://github.com/facebook/jest/pull/13723), [#​13777](https://github.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#​13680](https://github.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#​13741](https://github.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#​13700](https://github.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#​13762](https://github.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#​13687](https://github.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#​13639](https://github.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#​13692](https://github.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#​13633](https://github.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#​13806](https://github.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#​13608](https://github.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#​13735](https://github.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#​12755](https://github.com/facebook/jest/pull/12755) & [#​13805](https://github.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#​13694](https://github.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#​13770](https://github.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#​13612](https://github.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#​13619](https://github.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2931)
[Compare Source](https://github.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#​13583](https://github.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#​13420](https://github.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2930)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#​13505](https://github.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#​13565](https://github.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#​13513](https://github.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#​13566](https://github.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#​13509](https://github.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#​13560](https://github.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2922)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#​13476](https://github.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#​13504](https://github.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#​13503](https://github.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#​13480](https://github.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#​13483](https://github.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#​13490](https://github.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2921)
[Compare Source](https://github.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#​13440](https://github.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#​13467](https://github.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#​13398](https://github.com/facebook/jest/pull/13398) to restore mocking of setters ([#​13472](https://github.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#​13421](https://github.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2920)
[Compare Source](https://github.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://github.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://github.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#​13356](https://github.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#​13343](https://github.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#​13400](https://github.com/facebook/jest/pull/13400))
- `[expect, @​jest/expect-utils]` Allow `isA` utility to take a type argument ([#​13355](https://github.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#​13411](https://github.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#​13367](https://github.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#​13414](https://github.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13398](https://github.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#​13399](https://github.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#​13381](https://github.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#​13385](https://github.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#​13422](https://github.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#​13282](https://github.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2912)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#​13341](https://github.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2911)
[Compare Source](https://github.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#​13145](https://github.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2910)
[Compare Source](https://github.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://github.com/facebook/jest/pull/13268))
- `[expect, @​jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#​13278](https://github.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#​13253](https://github.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#​13254](https://github.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#​13244](https://github.com/facebook/jest/pull/13244), [#​13246](https://github.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#​13281](https://github.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#​13328](https://github.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#​13322](https://github.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#​13256](https://github.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#​13247](https://github.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#​13145](https://github.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#​13263](https://github.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#​13323](https://github.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#​11423](https://github.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2903)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule<T>()` method ([#​13202](https://github.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#​13240](https://github.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#​13235](https://github.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#​13203](https://github.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#​13242](https://github.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#​8704](https://github.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#​13240](https://github.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#​13217](https://github.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#​13023](https://github.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2902)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#​13184](https://github.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#​13188](https://github.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#​13207](https://github.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#​13211](https://github.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2901)
[Compare Source](https://github.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#​13181](https://github.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2900)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#​13141](https://github.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#​13142](https://github.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#​13036](https://github.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#​13156](https://github.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#​13037](https://github.com/facebook/jest/pull/13037), [#​13058](https://github.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#​12727](https://github.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://github.com/facebook/jest/pull/13123), [#​13124](https://github.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#​13125](https://github.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#​13150](https://github.com/facebook/jest/pull/13150))
- `[@jest/test-result, @​jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#​13155](https://github.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://github.com/facebook/jest/pull/13056), [#​13105](https://github.com/facebook/jest/pull/13105), [#​13106](https://github.com/facebook/jest/pull/13106), [#​13107](https://github.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#​13040](https://github.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#​12443](https://github.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#​13099](https://github.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#​13055](https://github.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#​13094](https://github.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#​13170](https://github.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#​13149](https://github.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#​12760](https://github.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#​13054](https://github.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#​13033](https://github.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#​13049](https://github.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#​13128](https://github.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#​13166](https://github.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#​13035](https://github.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#​13150](https://github.com/facebook/jest/pull/13150))
### [`v28.1.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2813)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#​12757](https://github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#​12977](https://github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#​13013](https://github.com/facebook/jest/pull/13013), [#​13020](https://github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#​12986](https://github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#​12935](https://github.com/facebook/jest/pull/12935), [#​13004](https://github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#​13000](https://github.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2812)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#​12949](https://github.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#​12898](https://github.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2811)
[Compare Source](https://github.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#​12848](https://github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#​12826](https://github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#​12885](https://github.com/facebook/jest/pull/12885), [#​12905](https://github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#​12899](https://github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#​12845](https://github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#​12901](https://github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#​12912](https://github.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://github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#​12828](https://github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#​12835](https://github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#​12859](https://github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#​12324](https://github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2810)
[Compare Source](https://github.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://github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#​12774](https://github.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://github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#​12763](https://github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#​12789](https://github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#​12799](https://github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#​12782](https://github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#​12783](https://github.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2803)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#​12769](https://github.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#​12714](https://github.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#​12766](https://github.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#​12764](https://github.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#​12761](https://github.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2802)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#​12753](https://github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#​12754](https://github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2801)
[Compare Source](https://github.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#​12736](https://github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#​12744](https://github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#​12748](https://github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#​12749](https://github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#​12735](https://github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2800)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#​12399](https://github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#​12363](https://github.com/facebook/jest/pull/12363), [#​12376](https://github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#​12201](https://github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#​12484](https://github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#​10797](https://github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#​12546](https://github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#​12354](https://github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#​12355](https://github.com/facebook/jest/pull/12355))
- `[jest-config, @​jest/types]` Add `ci` to `GlobalConfig` ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#​10817](https://github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#​12510](https://github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#​12701](https://github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#​12620](https://github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#​12440](https://github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#​12641](https://github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#​12652](https://github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#​12687](https://github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#​12290](https://github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#​11924](https://github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#​12461](https://github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#​12469](https://github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#​12642](https://github.com/facebook/jest/pull/12642), [#​12696](https://github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#​12404](https://github.com/facebook/jest/pull/12404), [#​12410](https://github.com/facebook/jest/pull/12410), [#​12418](https://github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#​12572](https://github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#​12008](https://github.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://github.com/facebook/jest/pull/12435), [#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#​12489](https://github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#​11080](https://github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#​12601](https://github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#​11320](https://github.com/facebook/jest/pull/11320), [#​12658](https://github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#​12657](https://github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#​11961](https://github.com/facebook/jest/pull/11961), [#​12373](https://github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#​12682](https://github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#​12392](https://github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#​11540](https://github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#​12707](https://github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#​12707](https://github.com/facebook/jest/pull/12707), ([#​12712](https://github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#​12042](https://github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#​12470](https://github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#​12646](https://github.com/facebook/jest/pull/12646), [#​12715](https://github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#​12720](https://github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#​12008](https://github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#​12531](https://github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#​12685](https://github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#​12698](https://github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#​12384](https://github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#​12692](https://github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#​12638](https://github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#​12591](https://github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#​12343](https://github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#​10983](https://github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#​12402](https://github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#​12722](https://github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#​12689](https://github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#​12346](https://github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#​12488](https://github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#​8359](https://github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#​12626](https://github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#​12322](https://github.com/facebook/jest/pull/12322))
- `[jest-circus, @​jest/types]` Disallow undefined value in `TestContext` type ([#​12507](https://github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#​12378](https://github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#​12397](https://github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#​12578](https://github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#​11084](https://github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#​12487](https://github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#​12705](https://github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#​12517](https://github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#​12464](https://github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#​12232](https://github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#​12386](https://github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#​12553](https://github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#​12631](https://github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#​8923](https://github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#​12420](https://github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#​12675](https://github.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#​12125](https://github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#​12518](https://github.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#​12402](https://github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#​12442](https://github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#​12674](https://github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#​11733](https://github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#​12593](https://github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#​12697](https://github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#​12654](https://github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#​12706](https://github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#​12497](https://github.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#​12220](https://github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#​11142](https://github.com/facebook/jest/pull/11142), [#​12648](https://github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#​12345](https://github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#​12447](https://github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#​11077](https://github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#​12217](https://github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#​12453](https://github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#​12407](https://github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#​12633](https://github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#​12323](https://github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#​12344](https://github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#​12404](https://github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#​11981](https://github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#​12492](https://github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#​12340](https://github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#​12676](https://github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#​12124](https://github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#​12341](https://github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#​12353](https://github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#​12640](https://github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#​12391](https://github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#​12342](https://github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#​12357](https://github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#​12406](https://github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#​12329](https://github.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://github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2751)
[Compare Source](https://github.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#​12308](https://github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#​12304](https://github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#​12315](https://github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#​12316](https://github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#​12311](https://github.com/facebook/jest/pull/12311) & [#​12315](https://github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#​12313](https://github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2750)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#​12243](https://github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#​12285](https://github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#​12251](https://github.com/facebook/jest/pull/12251))
- `[jest-each, @​jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#​12297](https://github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#​12292](https://github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#​12269](https://github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#​12264](https://github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#​12277](https://github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#​11749](https://github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#​11749](https://github.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2747)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#​12216](https://github.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://github.com/facebook/jest/blob/HEAD/CHANGELOG.md#​2746)
[Compare Source](https://github.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#​12157](https://github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#​12002](https://github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#​12213](https://github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#​12002](https://github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#​12160](https://github.com/facebook/jest/pull/12160))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->
Co-authored-by: Renovate Bot <renovate@vylpes.com>
Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/vylbot-app/pulls/241
Co-authored-by: RenovateBot <renovate@vylpes.com>
Co-committed-by: RenovateBot <renovate@vylpes.com>
2023-03-27 18:06:33 +01:00
|
|
|
dependencies:
|
|
|
|
cliui "^8.0.1"
|
|
|
|
escalade "^3.1.1"
|
|
|
|
get-caller-file "^2.0.5"
|
|
|
|
require-directory "^2.1.1"
|
|
|
|
string-width "^4.2.3"
|
|
|
|
y18n "^5.0.5"
|
|
|
|
yargs-parser "^21.1.1"
|
|
|
|
|
|
|
|
yocto-queue@^0.1.0:
|
|
|
|
version "0.1.0"
|
|
|
|
resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
|
|
|
|
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
|