facebook/jest
### [`v27.5.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2751)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#12316](https://togithub.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#12308](https://togithub.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#12304](https://togithub.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#12315](https://togithub.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#12316](https://togithub.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#12311](https://togithub.com/facebook/jest/pull/12311) & [#12315](https://togithub.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#12313](https://togithub.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2750)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#12243](https://togithub.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#12285](https://togithub.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#12251](https://togithub.com/facebook/jest/pull/12251))
- `[jest-each, @jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#12297](https://togithub.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#12292](https://togithub.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#12269](https://togithub.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#12264](https://togithub.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#12277](https://togithub.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#11749](https://togithub.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#11749](https://togithub.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2747)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#12216](https://togithub.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2746)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#12157](https://togithub.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#12002](https://togithub.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#12213](https://togithub.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#12002](https://togithub.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#12160](https://togithub.com/facebook/jest/pull/12160))
### [`v27.4.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2745)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.4...v27.4.5)
##### Fixes
- `[jest-worker]` Stop explicitly passing `process.env` ([#12141](https://togithub.com/facebook/jest/pull/12141))
### [`v27.4.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2744)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.3...v27.4.4)
##### Fixes
- `[babel-jest]` Add `process.version` chunk to the cache key ([#12122](https://togithub.com/facebook/jest/pull/12122))
- `[jest-environment]` Add `mocked` to `jest` object ([#12133](https://togithub.com/facebook/jest/pull/12133))
- `[jest-worker]` Stop explicitly passing `execArgv` ([#12128](https://togithub.com/facebook/jest/pull/12128))
##### Chore & Maintenance
- `[website]` Fix the card front that looks overlapping part of the card back
### [`v27.4.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2743)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.2...v27.4.3)
##### Fixes
- `[jest-environment-jsdom]` Remove `@types/jsdom` dependency (and make its `dom` property `private`) ([#12107](https://togithub.com/facebook/jest/pull/12107))
### [`v27.4.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2742)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.1...v27.4.2)
##### Fixes
- `[jest-worker]` Add additional `execArgv` to filter ([#12103](https://togithub.com/facebook/jest/pull/12103))
### [`v27.4.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2741)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.0...v27.4.1)
##### Fixes
- `[jest-worker]` Filter `execArgv` correctly ([#12097](https://togithub.com/facebook/jest/pull/12097))
### [`v27.4.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2740)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.3.1...v27.4.0)
##### Features
- `[expect]` Enhancing the `toHaveProperty` matcher to support array selection ([#12092](https://togithub.com/facebook/jest/pull/12092))
- `[jest-core]` Add support for `testResultsProcessor` written in ESM ([#12006](https://togithub.com/facebook/jest/pull/12006))
- `[jest-diff, pretty-format]` Add `compareKeys` option for custom sorting of object keys ([#11992](https://togithub.com/facebook/jest/pull/11992))
- `[jest-mock]` Add `ts-jest` mock util functions ([#12089](https://togithub.com/facebook/jest/pull/12089))
##### Fixes
- `[expect]` Allow again `expect.Matchers` generic with single value ([#11986](https://togithub.com/facebook/jest/pull/11986))
- `[jest-circus, jest-jasmine2]` Avoid false concurrent test failures due to unhandled promise rejections ([#11987](https://togithub.com/facebook/jest/pull/11987))
- `[jest-config]` Add missing `slash` dependency to `package.json` ([#12080](https://togithub.com/facebook/jest/pull/12080))
- `[jest-core]` Incorrect detection of open ZLIB handles ([#12022](https://togithub.com/facebook/jest/pull/12022))
- `[jest-diff]` Break dependency cycle ([#10818](https://togithub.com/facebook/jest/pull/10818))
- `[jest-environment-jsdom]` Add `@types/jsdom` dependency ([#11999](https://togithub.com/facebook/jest/pull/11999))
- `[jest-environment-jsdom]` Do not reset the global.document too early on teardown ([#11871](https://togithub.com/facebook/jest/pull/11871))
- `[jest-transform]` Improve error and warning messages ([#11998](https://togithub.com/facebook/jest/pull/11998))
- `[jest-worker]` Pass `execArgv` correctly to `worker_threads` worker ([#12069](https://togithub.com/facebook/jest/pull/12069))
##### Chore & Maintenance
- `[docs]` CLI options alphabetized ([#11586](https://togithub.com/facebook/jest/pull/11586))
- `[jest-runner]` Add info regarding timers to forcedExit message([#12083](https://togithub.com/facebook/jest/pull/12083))
- `[*]` Replaced `substr` method with `substring` ([#12066](https://togithub.com/facebook/jest/pull/12066))
- `[*]` Add `types` entry to all export maps ([#12073](https://togithub.com/facebook/jest/pull/12073))
### [`v27.3.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2731)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.3.0...v27.3.1)
##### Fixes
- `[expect]` Make `expect` extension properties `configurable` ([#11978](https://togithub.com/facebook/jest/pull/11978))
- `[expect]` Fix `.any()` checks on primitive wrapper classes ([#11976](https://togithub.com/facebook/jest/pull/11976))
##### Chore & Maintenance
- `[expect]` `BigInt` global is always defined, don't check for its existence at runtime ([#11979](https://togithub.com/facebook/jest/pull/11979))
- `[jest-config, jest-util]` Use `ci-info` instead of `is-ci` to detect CI environment ([#11973](https://togithub.com/facebook/jest/pull/11973))
### [`v27.3.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2730)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.2.5...v27.3.0)
##### Features
- `[jest-config]` Add `testEnvironmentOptions.html` to apply to jsdom input ([#11950](https://togithub.com/facebook/jest/pull/11950))
- `[jest-resolver]` Support default export (`.`) in `exports` field *if* `main` is missing ([#11919](https://togithub.com/facebook/jest/pull/11919))
##### Fixes
- `[expect]` Tweak and improve types ([#11949](https://togithub.com/facebook/jest/pull/11949))
- `[jest-runtime]` Ensure absolute paths can be resolved within test modules ([#11943](https://togithub.com/facebook/jest/pull/11943))
- `[jest-runtime]` Fix `instanceof` for `ModernFakeTimers` and `LegacyFakeTimers` methods ([#11946](https://togithub.com/facebook/jest/pull/11946))
### [`v27.2.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2725)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.2.4...v27.2.5)
##### Features
- `[jest-config]` Warn when multiple Jest configs are located ([#11922](https://togithub.com/facebook/jest/pull/11922))
##### Fixes
- `[expect]` Pass matcher context to asymmetric matchers ([#11926](https://togithub.com/facebook/jest/pull/11926) & [#11930](https://togithub.com/facebook/jest/pull/11930))
- `[expect]` Improve TypeScript types ([#11931](https://togithub.com/facebook/jest/pull/11931))
- `[expect]` Improve typings of `toThrow()` and `toThrowError()` matchers ([#11929](https://togithub.com/facebook/jest/pull/11929))
- `[jest-cli]` Improve `--help` printout by removing defunct `--browser` option ([#11914](https://togithub.com/facebook/jest/pull/11914))
- `[jest-haste-map]` Use distinct cache paths for different values of `computeDependencies` ([#11916](https://togithub.com/facebook/jest/pull/11916))
- `[@jest/reporters]` Do not buffer `console.log`s when using verbose reporter ([#11054](https://togithub.com/facebook/jest/pull/11054))
##### Chore & Maintenance
- `[expect]` Export default matchers ([#11932](https://togithub.com/facebook/jest/pull/11932))
- `[@jest/types]` Mark deprecated configuration options as `@deprecated` ([#11913](https://togithub.com/facebook/jest/pull/11913))
### [`v27.2.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2724)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.2.3...v27.2.4)
##### Features
- `[expect]` Add equality checks for Array Buffers in `expect.ToStrictEqual()` ([#11805](https://togithub.com/facebook/jest/pull/11805))
##### Fixes
- `[jest-snapshot]` Correctly indent inline snapshots ([#11560](https://togithub.com/facebook/jest/pull/11560))
### [`v27.2.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2723)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.2.2...v27.2.3)
##### Features
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` to v8 ([#11879](https://togithub.com/facebook/jest/pull/11879))
##### Fixes
- `[jest-config]` Parse `testEnvironmentOptions` if received from CLI ([#11902](https://togithub.com/facebook/jest/pull/11902))
- `[jest-reporters]` Call `destroy` on `v8-to-istanbul` converters to free memory ([#11896](https://togithub.com/facebook/jest/pull/11896))
### [`v27.2.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2722)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.2.1...v27.2.2)
##### Fixes
- `[jest-runtime]` Correct `wrapperLength` value for ESM modules. ([#11893](https://togithub.com/facebook/jest/pull/11893))
### [`v27.2.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2721)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.2.0...v27.2.1)
##### Features
- `[jest-transform]` Improve the unexpected token error message. ([#11807](https://togithub.com/facebook/jest/pull/11807))
##### Fixes
- `[jest-runtime]` Fix regression when using `jest.isolateModules` and mocks ([#11882](https://togithub.com/facebook/jest/pull/11882))
- `[jest-runtime]` Include test name when importing modules after test has completed ([#11885](https://togithub.com/facebook/jest/pull/11885))
- `[jest-runtime]` Error when ESM import is used after test is torn down ([#11885](https://togithub.com/facebook/jest/pull/11885))
### [`v27.2.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2720)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.1.1...v27.2.0)
##### Features
- `[jest-resolver, jest-runtime]` Pass `conditions` to custom resolvers to enable them to implement support for package.json `exports` field ([#11859](https://togithub.com/facebook/jest/pull/11859))
- `[jest-runtime]` Allow custom envs to specify `exportConditions` which is passed together with Jest's own conditions to custom resolvers ([#11863](https://togithub.com/facebook/jest/pull/11863))
##### Fixes
- `[@jest/reporters]` Use async transform if available to transform files with no coverage ([#11852](https://togithub.com/facebook/jest/pull/11852))
- `[jest-util]` Return correct value from `process.send` stub ([#11799](https://togithub.com/facebook/jest/pull/11799))
### [`v27.1.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2711)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.1.0...v27.1.1)
##### Features
- `[jest-runtime]` Add experimental, limited (and undocumented) support for mocking ECMAScript Modules ([#11818](https://togithub.com/facebook/jest/pull/11818))
##### Fixes
- `[jest-resolver]` Support `node:` prefix when importing Node core modules with ESM ([#11817](https://togithub.com/facebook/jest/pull/11817))
- `[jest-types]` Export the `PrettyFormatOptions` interface ([#11801](https://togithub.com/facebook/jest/pull/11801))
### [`v27.1.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2710)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.6...v27.1.0)
##### Features
- `[jest-haste-map]` Use watchman suffix-set option for faster file indexing. ([#11784](https://togithub.com/facebook/jest/pull/11784))
- `[jest-cli]` Adds a new config options `snapshotFormat` which offers a way to override any of the formatting settings which come with [pretty-format](https://www.npmjs.com/package/pretty-format#usage-with-options). ([#11654](https://togithub.com/facebook/jest/pull/11654))
- `[jest-reporters]` Expose the `getSummary` util ([#11695](https://togithub.com/facebook/jest/pull/11695)).
- `[jest-resolver]` Support `node:` prefix when importing Node core modules ([#11331](https://togithub.com/facebook/jest/pull/11331))
##### Fixes
- `[jest-each]` Relaxed the validation to allow multibyte characters in headings ([#11575](https://togithub.com/facebook/jest/pull/11575))
- `[jest-environment-jsdom]` Add support for `userAgent` option ([#11773](https://togithub.com/facebook/jest/pull/11773))
- `[jest-environment-node]` Add `Event` and `EventTarget` to node global environment. ([#11727](https://togithub.com/facebook/jest/pull/11727))
- `[jest-mock]` Fix `spyOn` to use `Object.prototype.hasOwnProperty` ([#11721](https://togithub.com/facebook/jest/pull/11721))
- `[jest-resolver]` Add dependency on `jest-haste-map` ([#11759](https://togithub.com/facebook/jest/pull/11759))
- `[jest-types]` Compat with `@types/node` v16 ([#11645](https://togithub.com/facebook/jest/pull/11645))
##### Chore & Maintenance
- `[docs]` Correct `expects.assertions` documentation by adding async/await for asynchronous function.
### [`v27.0.6`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2706)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.5...v27.0.6)
##### Fixes
- `[*]` Publish all modules to include the build change in ([#11569](https://togithub.com/facebook/jest/pull/11569))
### [`v27.0.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2705)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.4...v27.0.5)
##### Features
- `[@jest/fake-timers]` Flush callbacks scheduled with `requestAnimationFrame` every 16ms when using legacy timers. ([#11523](https://togithub.com/facebook/jest/pull/11567))
- `[pretty-format]` Use `globalThis` (with polyfill if required) to bring support for esbuild's browser bundling mode ([#11569](https://togithub.com/facebook/jest/pull/11569))
##### Fixes
- `[jest-core]` Support special characters like `@`, `+` and `()` on Windows with `--findRelatedTests` ([#11548](https://togithub.com/facebook/jest/pull/11548))
- `[@jest/fake-timers]` Do not add `setImmediate` and `clearImmediate` if they do not exist in the global environment ([#11599](https://togithub.com/facebook/jest/pull/11599))
- `[@jest/reporters]` Allow `node-notifier@10` as peer dependency ([#11523](https://togithub.com/facebook/jest/pull/11523))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#11523](https://togithub.com/facebook/jest/pull/11523))
### [`v27.0.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2704)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.3...v27.0.4)
##### Fixes
- `[jest-config, jest-resolve]` Pass in `require.resolve` to resolvers to resolve from correct base ([#11493](https://togithub.com/facebook/jest/pull/11493))
### [`v27.0.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2703)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.2...v27.0.3)
##### Fixes
- `[jest-config]` `require.resolve` on default test sequencer and test environment ([#11482](https://togithub.com/facebook/jest/pull/11482))
- `[jest-mock]` Fixed `fn` and `spyOn` exports ([#11480](https://togithub.com/facebook/jest/pull/11480))
### [`v27.0.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2702)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.1...v27.0.2)
##### Features
- `[jest-circus]` Add some APIs to make it easier to build your own test runner
- `[jest-reporters]` Expose the `getResultHeader` util ([#11460](https://togithub.com/facebook/jest/pull/11460))
- `[jest-resolver]` Export `resolve*` utils for different Jest modules ([#11466](https://togithub.com/facebook/jest/pull/11466))
- `[@jest/test-result]` Export `Test`, `TestEvents` and `TestFileEvent` ([#11466](https://togithub.com/facebook/jest/pull/11466))
##### Fixes
- `[jest-circus]` Add missing `slash` dependency ([#11465](https://togithub.com/facebook/jest/pull/11465))
- `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://togithub.com/facebook/jest/pull/11466))
- `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://togithub.com/facebook/jest/pull/11465))
- `[jest-config]` Make sure to support functions as config ([#11475](https://togithub.com/facebook/jest/pull/11475))
- `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://togithub.com/facebook/jest/pull/11470))
- `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://togithub.com/facebook/jest/pull/11466))
- `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://togithub.com/facebook/jest/pull/11451))
### [`v27.0.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2701)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.0...v27.0.1)
##### Fixes
- `[jest-environment-jsdom]` Bump version of JSDOM to avoid deprecated `request` package ([#11442](https://togithub.com/facebook/jest/pull/11442))
### [`v27.0.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2700)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.6.3...v27.0.0)
##### Features
- `[babel-jest]` Add async transformation ([#11192](https://togithub.com/facebook/jest/pull/11192))
- `[jest-changed-files]` Use '--' to separate paths from revisions ([#11160](https://togithub.com/facebook/jest/pull/11160))
- `[jest-circus]` \[**BREAKING**] Fail tests when multiple `done()` calls are made ([#10624](https://togithub.com/facebook/jest/pull/10624))
- `[jest-circus, jest-jasmine2]` \[**BREAKING**] Fail the test instead of just warning when describe returns a value ([#10947](https://togithub.com/facebook/jest/pull/10947))
- `[jest-config]` \[**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://togithub.com/facebook/jest/pull/9874))
- `[jest-config]` \[**BREAKING**] Use `jest-circus` as default test runner ([#10686](https://togithub.com/facebook/jest/pull/10686))
- `[jest-config]` Add support for `preset` written in ESM ([#11200](https://togithub.com/facebook/jest/pull/11200))
- `[jest-config, jest-runtime]` Support ESM for files other than `.js` and `.mjs` ([#10823](https://togithub.com/facebook/jest/pull/10823))
- `[jest-config, jest-runtime]` \[**BREAKING**] Use "modern" implementation as default for fake timers ([#10874](https://togithub.com/facebook/jest/pull/10874) & [#11197](https://togithub.com/facebook/jest/pull/11197))
- `[jest-config` Allow passing `forceNodeFilesystemAPI` through to `jest-haste-map` ([#11264](https://togithub.com/facebook/jest/pull/11264))
- `[jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types]` \[**BREAKING**] Add custom HasteMap class implementation config option ([#11107](https://togithub.com/facebook/jest/pull/11107))
- `[jest-core]` make `TestWatcher` extend `emittery` ([#10324](https://togithub.com/facebook/jest/pull/10324))
- `[jest-core]` Run failed tests interactively the same way we do with snapshots ([#10858](https://togithub.com/facebook/jest/pull/10858))
- `[jest-core]` more `TestSequencer` methods can be async ([#10980](https://togithub.com/facebook/jest/pull/10980))
- `[jest-core]` Add support for `testSequencer` written in ESM ([#11207](https://togithub.com/facebook/jest/pull/11207))
- `[jest-core]` Add support for `globalSetup` and `globalTeardown` written in ESM ([#11267](https://togithub.com/facebook/jest/pull/11267))
- `[jest-core]` Add support for `watchPlugins` written in ESM ([#11315](https://togithub.com/facebook/jest/pull/11315))
- `[jest-core]` Add support for `runner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-core]` Add support for `reporters` written in ESM ([#11427](https://togithub.com/facebook/jest/pull/11427))
- `[jest-each]` Add support for interpolation with object properties ([#11388](https://togithub.com/facebook/jest/pull/11388))
- `[jest-environment-node]` Add AbortController to globals ([#11182](https://togithub.com/facebook/jest/pull/11182))
- `[@jest/fake-timers]` Update to `@sinonjs/fake-timers` to v7 ([#11198](https://togithub.com/facebook/jest/pull/11198))
- `[jest-haste-map]` Handle injected scm clocks ([#10966](https://togithub.com/facebook/jest/pull/10966))
- `[jest-haste-map]` Add `enableSymlinks` configuration option to follow symlinks for test files ([#9351](https://togithub.com/facebook/jest/pull/9351))
- `[jest-repl, jest-runner]` \[**BREAKING**] Run transforms over environment ([#8751](https://togithub.com/facebook/jest/pull/8751))
- `[jest-repl]` Add support for `testEnvironment` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-reporters]` Add static filepath property to all reporters ([#11015](https://togithub.com/facebook/jest/pull/11015))
- `[jest-runner]` \[**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://togithub.com/facebook/jest/pull/10728))
- `[jest-runner]` \[**BREAKING**] Run transforms over `runner` ([#8823](https://togithub.com/facebook/jest/pull/8823))
- `[jest-runner]` \[**BREAKING**] Run transforms over `testRunner` ([#8823](https://togithub.com/facebook/jest/pull/8823))
- `[jest-runner]` Possibility to use ESM for test environment ([11033](https://togithub.com/facebook/jest/pull/11033))
- `[jest-runner]` Add support for `testRunner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://togithub.com/facebook/jest/pull/10988))
- `[jest-runtime]` Support for async code transformations ([#11191](https://togithub.com/facebook/jest/pull/11191) & [#11220](https://togithub.com/facebook/jest/pull/11220))
- `[jest-snapshot]` \[**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://togithub.com/facebook/jest/pull/7792) & [#11192](https://togithub.com/facebook/jest/pull/11192))
- `[jest-snapshot]` \[**BREAKING**] Run transforms over `snapshotResolver` ([#8751](https://togithub.com/facebook/jest/pull/8829))
- `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://togithub.com/facebook/jest/pull/10926))
- `[jest-transform]` Add support for transformers written in ESM ([#11163](https://togithub.com/facebook/jest/pull/11163))
- `[jest-transform]` \[**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://togithub.com/facebook/jest/pull/11163))
- `[jest-transform]` Async code transformations ([#9889](https://togithub.com/facebook/jest/pull/9889))
- `[jest-transform]` Support transpiled transformers ([#11193](https://togithub.com/facebook/jest/pull/11193))
- `[jest-transform]` \[**BREAKING**] `requireAndTranspileModule` always return a `Promise`, and the third parameter type is changed to `RequireAndTranspileModuleOptions` which accept `applyInteropRequireDefault` option ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-transform]` \[**BREAKING**] `createTranspilingRequire` return function which return a `Promise` now ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-util]` add requireOrImportModule for importing CJS or ESM ([#11199](https://togithub.com/facebook/jest/pull/11199))
- `[jest-util]` add `applyInteropRequireDefault` option on `requireOrImportModule` ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-watcher]` Added support for clearing the line when `` is pressed in a watch mode pattern prompt ([#11358](https://togithub.com/facebook/jest/pull/11358))
- `[jest-worker]` Add support for custom task queues and adds a `PriorityQueue` implementation. ([#10921](https://togithub.com/facebook/jest/pull/10921))
- `[jest-worker]` Add in-order scheduling policy to jest worker ([10902](https://togithub.com/facebook/jest/pull/10902))
- `[pretty-format]` Better print for sparse arrays ([11326](https://togithub.com/facebook/jest/pull/11326))
- `[pretty-print]` Add option `printBasicPrototype` which determines whether or not the prototype should be printed for raw objects or arrays ([#11441](https://togithub.com/facebook/jest/pull/11441))
##### Fixes
- `[babel-plugin-jest-hoist]` Add `__dirname` and `__filename` to whitelisted globals ([#10903](https://togithub.com/facebook/jest/pull/10903))
- `[expect]` \[**BREAKING**] Revise `expect.not.objectContaining()` to be the inverse of `expect.objectContaining()`, as documented. ([#10708](https://togithub.com/facebook/jest/pull/10708))
- `[expect]` \[**BREAKING**] Make `toContain` more strict with the received type ([#10119](https://togithub.com/facebook/jest/pull/10119) & [#10929](https://togithub.com/facebook/jest/pull/10929))
- `[expect]` \[**BREAKING**] `matcherResult` on `JestAssertionError` are now strings rather than functions ([#10989](https://togithub.com/facebook/jest/pull/10989))
- `[jest-circus]` Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped `describe` block ([#10806](https://togithub.com/facebook/jest/pull/10806))
- `[jest-circus]` Fix `testLocation` on Windows when using `test.each` ([#10871](https://togithub.com/facebook/jest/pull/10871))
- `[jest-cli]` Use testFailureExitCode when bailing from a failed test ([#10958](https://togithub.com/facebook/jest/pull/10958))
- `[jest-cli]` Print custom error if error thrown from global hooks is not an error already ([#11003](https://togithub.com/facebook/jest/pull/11003))
- `[jest-cli]` Allow running multiple "projects" from programmatic API ([#11307](https://togithub.com/facebook/jest/pull/11307))
- `[jest-cli]` Fix missing collectCoverage after init ([#11353](https://togithub.com/facebook/jest/pull/11353))
- `[jest-cli, jest-config, jest-types]` Move all default values into `jest-config` ([#9924](https://togithub.com/facebook/jest/pull/9924))
- `[jest-config]` \[**BREAKING**] Change default file extension order by moving json behind ts and tsx ([10572](https://togithub.com/facebook/jest/pull/10572))
- `[jest-console]` `console.dir` now respects the second argument correctly ([#10638](https://togithub.com/facebook/jest/pull/10638))
- `[jest-core]` Don't report PerformanceObserver as open handle ([#11123](https://togithub.com/facebook/jest/pull/11123))
- `[jest-core]` Use `WeakRef` to hold timers when detecting open handles ([#11277](https://togithub.com/facebook/jest/pull/11277))
- `[jest-core]` Correctly detect open handles that were created in test functions using `done` callbacks ([#11382](https://togithub.com/facebook/jest/pull/11382))
- `[jest-core]` Do not collect `RANDOMBYTESREQUEST` as open handles ([#11278](https://togithub.com/facebook/jest/pull/11278))
- `[jest-core]` Wait briefly for open handles to close before flagging them when using `--detectOpenHandles` ([#11429](https://togithub.com/facebook/jest/pull/11429))
- `[jest-diff]` \[**BREAKING**] Use only named exports ([#11371](https://togithub.com/facebook/jest/pull/11371))
- `[jest-each]` \[**BREAKING**] Ignore excess words in headings ([#8766](https://togithub.com/facebook/jest/pull/8766))
- `[jest-each]` Support array index with template strings ([#10763](https://togithub.com/facebook/jest/pull/10763))
- `[jest-each]` Interpolate `%%` correctly ([#11364](https://togithub.com/facebook/jest/pull/11364))
- `[jest-each]` Fix wrong interpolation when the value of array contains multiple `%` ([#11364](https://togithub.com/facebook/jest/pull/11364))
- `[jest-environment]` \[**BREAKING**] Drop support for `runScript` for test environments ([#11155](https://togithub.com/facebook/jest/pull/11155))
- `[jest-environment-jsdom]` Use inner realm’s `ArrayBuffer` constructor ([#10885](https://togithub.com/facebook/jest/pull/10885))
- `[jest-environment-jsdom]` \[**BREAKING**] Remove Node globals `setImmediate` and `clearImmediate` ([#11222](https://togithub.com/facebook/jest/pull/11222))
- `[jest-get-type]` \[**BREAKING**] Convert to ES Module ([#11359](https://togithub.com/facebook/jest/pull/11359))
- `[jest-globals]` \[**BREAKING**] Disallow return values other than a `Promise` from hooks and tests ([#10512](https://togithub.com/facebook/jest/pull/10512))
- `[jest-globals]` \[**BREAKING**] Disallow mixing a done callback and returning a `Promise` from hooks and tests ([#10512](https://togithub.com/facebook/jest/pull/10512))
- `[jest-haste-map]` Vendor `NodeWatcher` from `sane` ([#10919](https://togithub.com/facebook/jest/pull/10919))
- `[jest-jasmine2]` Fixed the issue of `beforeAll` & `afterAll` hooks getting executed even if it is inside a skipped `describe` block when it has child `tests` marked as either `only` or `todo` ([#10806](https://togithub.com/facebook/jest/pull/10806))
- `[jest-jasmine2]` Fixed the issues of child `tests` marked with `only` or `todo` getting executed even if it is inside a skipped parent `describe` block ([#10806](https://togithub.com/facebook/jest/pull/10806))
- `[jest-jasmine2]` Wrap all test functions so they open handles that were created in test functions using `done` callbacks can be detected ([#11382](https://togithub.com/facebook/jest/pull/11382))
- `[jest-reporter]` Handle empty files when reporting code coverage with V8 ([#10819](https://togithub.com/facebook/jest/pull/10819))
- `[jest-resolve]` Replace read-pkg-up with escalade package ([#10781](https://togithub.com/facebook/jest/pull/10781))
- `[jest-resolve]` Disable `jest-pnp-resolver` for Yarn 2 ([#10847](https://togithub.com/facebook/jest/pull/10847))
- `[jest-runtime]` \[**BREAKING**] Do not inject `global` variable into module wrapper ([#10644](https://togithub.com/facebook/jest/pull/10644))
- `[jest-runtime]` \[**BREAKING**] remove long-deprecated `jest.addMatchers`, `jest.resetModuleRegistry`, and `jest.runTimersToTime` ([#9853](https://togithub.com/facebook/jest/pull/9853))
- `[jest-runtime]` Fix stack overflow and promise deadlock when importing mutual dependant ES module ([#10892](https://togithub.com/facebook/jest/pull/10892))
- `[jest-runtime]` Prevent global module registry from leaking into `isolateModules` registry ([#10963](https://togithub.com/facebook/jest/pull/10963))
- `[jest-runtime]` Refactor to prevent race condition when linking and evaluating ES Modules ([#11150](https://togithub.com/facebook/jest/pull/11150))
- `[jest-runtime]` Throw correct error when attempting to load ESM via `require` ([#11260](https://togithub.com/facebook/jest/pull/11260))
- `[jest-runtime]` Do not cache modules that throw during evaluation ([#11263](https://togithub.com/facebook/jest/pull/11263))
- `[jest-transform]` Show enhanced `SyntaxError` message for all `SyntaxError`s ([#10749](https://togithub.com/facebook/jest/pull/10749))
- `[jest-transform]` \[**BREAKING**] Refactor API to pass an options bag around rather than multiple boolean options ([#10753](https://togithub.com/facebook/jest/pull/10753))
- `[jest-transform]` \[**BREAKING**] Refactor API of transformers to pass an options bag rather than separate `config` and other options ([#10834](https://togithub.com/facebook/jest/pull/10834))
- `[jest-types]` Fix `Config.ts` `projects` types ([#11285](https://togithub.com/facebook/jest/pull/11285))
- `[jest-util]` Replace micromatch with picomatch to fix issues with negated globs ([#11287](https://togithub.com/facebook/jest/pull/11287))
- `[jest-validate]` Use `en-US` locale to avoid case conversion problems while validating CLI options on machines with some certain locales(e.g. Turkish) set as default locale. ([#11412](https://togithub.com/facebook/jest/pull/11412))
- `[jest-worker]` \[**BREAKING**] Use named exports ([#10623](https://togithub.com/facebook/jest/pull/10623))
- `[jest-worker]` Do not swallow errors during serialization ([#10984](https://togithub.com/facebook/jest/pull/10984))
- `[jest-worker]` Handle `ERR_IPC_CHANNEL_CLOSED` errors properly ([#11143](https://togithub.com/facebook/jest/pull/11143))
- `[pretty-format]` \[**BREAKING**] Convert to ES Modules ([#10515](https://togithub.com/facebook/jest/pull/10515))
- `[pretty-format]` Only call `hasAttribute` if it's a function ([#11000](https://togithub.com/facebook/jest/pull/11000))
- `[pretty-format]` Handle jsdom attributes properly ([#11189](https://togithub.com/facebook/jest/pull/11189))
- `[pretty-format]` Import pretty-format using named imports ([#11360](https://togithub.com/facebook/jest/pull/11360))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Only support Node LTS releases and Node 15 ([#10685](https://togithub.com/facebook/jest/pull/10685))
- `[*]` \[**BREAKING**] Add `exports` field to all `package.json`s ([#9921](https://togithub.com/facebook/jest/pull/9921))
- `[*]` Make it easier for Jest's packages to use the VM escape hatch ([#10824](https://togithub.com/facebook/jest/pull/10824))
- `[*]` \[**BREAKING**] Remove deprecated `mapCoverage` ([#9968](https://togithub.com/facebook/jest/pull/9968))
- `[babel-jest]` \[**BREAKING**] Migrate to ESM ([#11193](https://togithub.com/facebook/jest/pull/11193))
- `[docs]` Correct example using `browser-resolve` ([#11140](https://togithub.com/facebook/jest/pull/11140))
- `[docs]` Clarify `timers` configuration property ([#11376](https://togithub.com/facebook/jest/pull/11376))
- `[jest, jest-core]` \[**BREAKING**] Replace `TestScheduler` export with `createTestScheduler` ([#11427](https://togithub.com/facebook/jest/pull/11427))
- `[jest-config]` \[**BREAKING**] Remove `enabledTestsMap` config, use `filter` instead ([#10787](https://togithub.com/facebook/jest/pull/10787))
- `[jest-console]` \[**BREAKING**] Move `root` into `config` and take `GlobalConfig` as mandatory parameter for `getConsoleOutput` ([#10126](https://togithub.com/facebook/jest/pull/10126))
- `[jest-console]` Export LogEntry ([#11017](https://togithub.com/facebook/jest/pull/11017))
- `[jest-fake-timers]` Clarify global behavior of `jest.useFakeTimers` and `jest.useRealTimers` ([#10867](https://togithub.com/facebook/jest/pull/10867))
- `[jest-haste-map]` \[**BREAKING**] Migrate to ESM ([#10875](https://togithub.com/facebook/jest/pull/10875))
- `[jest-haste-map]` \[**BREAKING**] Remove support for deprecated option `ignorePattern` as function ([#10348](https://togithub.com/facebook/jest/pull/10348))
- `[jest-jasmine2]` \[**BREAKING**] Migrate to ESM ([#10906](https://togithub.com/facebook/jest/pull/10906))
- `[jest-jasmine2]` \[**BREAKING**] Remove unused options argument from `Env` constructor ([#10240](https://togithub.com/facebook/jest/pull/10240))
- `[jest-repl, jest-runtime]` \[**BREAKING**] Move the `jest-runtime` CLI into `jest-repl` ([#10016](https://togithub.com/facebook/jest/pull/10016) & [#10925](https://togithub.com/facebook/jest/pull/10925))
- `[jest-resolve]` \[**BREAKING**] Migrate to ESM ([#10688](https://togithub.com/facebook/jest/pull/10688))
- `[jest-resolve-dependencies]` \[**BREAKING**] Migrate to ESM ([#10876](https://togithub.com/facebook/jest/pull/10876))
- `[jest-mock]` \[**BREAKING**] Migrate to ESM ([#10887](https://togithub.com/facebook/jest/pull/10887))
- `[jest-reporters]` \[**BREAKING**] Make `node-notifier` a peer dependency ([#10977](https://togithub.com/facebook/jest/pull/10977))
- `[jest-resolve, jest-runtime]` \[**BREAKING**] Use `Map`s instead of objects for all cached resources ([#10968](https://togithub.com/facebook/jest/pull/10968))
- `[jest-runner]` \[**BREAKING**] Migrate to ESM ([#10900](https://togithub.com/facebook/jest/pull/10900))
- `[jest-runtime]` \[**BREAKING**] Remove deprecated and unused `getSourceMapInfo` from Runtime ([#9969](https://togithub.com/facebook/jest/pull/9969))
- `[jest-transformer]` \[**BREAKING**] Remove unused `isCoreModule` option ([#11166](https://togithub.com/facebook/jest/pull/11166))
- `[jest-util]` No longer checking `enumerable` when adding `process.domain` ([#10862](https://togithub.com/facebook/jest/pull/10862))
- `[jest-validate]` \[**BREAKING**] Remove `recursiveBlacklist` option in favor of previously introduced `recursiveDenylist` ([#10650](https://togithub.com/facebook/jest/pull/10650))
- `[website]` Replace 'Github' with 'GitHub' ([#11279](https://togithub.com/facebook/jest/pull/11279))
- `[website]` Remove a language code from the link to the Node.js website ([#11282](https://togithub.com/facebook/jest/pull/11282))
- `[website]` Remove a duplicated word ([#11281](https://togithub.com/facebook/jest/pull/11281))
- `[website]` Add french to website ([#11361](https://togithub.com/facebook/jest/pull/11361))
##### Performance
- `[jest-resolve]` Cache reading and parsing of `package.json`s ([#11076](https://togithub.com/facebook/jest/pull/11076))
- `[jest-runtime, jest-transform]` share `cacheFS` between runtime and transformer ([#10901](https://togithub.com/facebook/jest/pull/10901))
- `[jest-runtime]` Load `chalk` only once per worker ([#10864](https://togithub.com/facebook/jest/pull/10864))
- `[jest-worker]` Fix memory leak of previous task arguments while no new task is scheduled ([#11187](https://togithub.com/facebook/jest/pull/11187))
Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Renovate will not automatically rebase this PR, because other commits have been found.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR contains the following updates:
26.6.3
->27.5.1
Release Notes
facebook/jest
### [`v27.5.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2751) [Compare Source](https://togithub.com/facebook/jest/compare/v27.5.0...v27.5.1) ##### Features - `[jest-config]` Support comments in JSON config file ([#12316](https://togithub.com/facebook/jest/pull/12316)) - `[pretty-format]` Expose `ConvertAnsi` plugin ([#12308](https://togithub.com/facebook/jest/pull/12308)) ##### Fixes - `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#12304](https://togithub.com/facebook/jest/pull/12304)) - `[jest-cli]` Load binary via exported API ([#12315](https://togithub.com/facebook/jest/pull/12315)) - `[jest-config]` Replace `jsonlint` with `parse-json` ([#12316](https://togithub.com/facebook/jest/pull/12316)) - `[jest-repl]` Make module importable ([#12311](https://togithub.com/facebook/jest/pull/12311) & [#12315](https://togithub.com/facebook/jest/pull/12315)) ##### Chore & Maintenance - `[*]` Avoid anonymous default exports ([#12313](https://togithub.com/facebook/jest/pull/12313)) ### [`v27.5.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2750) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.7...v27.5.0) ##### Features - `[expect]` Add asymmetric matcher `expect.closeTo` ([#12243](https://togithub.com/facebook/jest/pull/12243)) - `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#12285](https://togithub.com/facebook/jest/pull/12285)) ##### Fixes - `[expect]` Add a fix for `.toHaveProperty('')` ([#12251](https://togithub.com/facebook/jest/pull/12251)) - `[jest-each, @jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#12297](https://togithub.com/facebook/jest/pull/12297)) - `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#12292](https://togithub.com/facebook/jest/pull/12292)) - `[jest-environment-node]` Add `atob` and `btoa` ([#12269](https://togithub.com/facebook/jest/pull/12269)) - `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#12264](https://togithub.com/facebook/jest/pull/12264)) - `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#12277](https://togithub.com/facebook/jest/pull/12277)) ##### Chore & Maintenance - `[*]` Update `graceful-fs` to `^4.2.9` ([#11749](https://togithub.com/facebook/jest/pull/11749)) ##### Performance - `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#11749](https://togithub.com/facebook/jest/pull/11749)) ### [`v27.4.7`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2747) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.6...v27.4.7) ##### Fixes - `jest-config` Add missing `@babel/core` dependency ([#12216](https://togithub.com/facebook/jest/pull/12216)) ### [`v27.4.6`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2746) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.5...v27.4.6) ##### Fixes - `[jest-environment-node]` Add `AbortSignal` ([#12157](https://togithub.com/facebook/jest/pull/12157)) - `[jest-environment-node]` Add Missing node global `performance` ([#12002](https://togithub.com/facebook/jest/pull/12002)) - `[jest-runtime]` Handle missing `mocked` property ([#12213](https://togithub.com/facebook/jest/pull/12213)) - `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#12002](https://togithub.com/facebook/jest/pull/12002)) ##### Performance - `jest-config` perf: only register ts-node once when loading TS config files ([#12160](https://togithub.com/facebook/jest/pull/12160)) ### [`v27.4.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2745) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.4...v27.4.5) ##### Fixes - `[jest-worker]` Stop explicitly passing `process.env` ([#12141](https://togithub.com/facebook/jest/pull/12141)) ### [`v27.4.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2744) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.3...v27.4.4) ##### Fixes - `[babel-jest]` Add `process.version` chunk to the cache key ([#12122](https://togithub.com/facebook/jest/pull/12122)) - `[jest-environment]` Add `mocked` to `jest` object ([#12133](https://togithub.com/facebook/jest/pull/12133)) - `[jest-worker]` Stop explicitly passing `execArgv` ([#12128](https://togithub.com/facebook/jest/pull/12128)) ##### Chore & Maintenance - `[website]` Fix the card front that looks overlapping part of the card back ### [`v27.4.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2743) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.2...v27.4.3) ##### Fixes - `[jest-environment-jsdom]` Remove `@types/jsdom` dependency (and make its `dom` property `private`) ([#12107](https://togithub.com/facebook/jest/pull/12107)) ### [`v27.4.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2742) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.1...v27.4.2) ##### Fixes - `[jest-worker]` Add additional `execArgv` to filter ([#12103](https://togithub.com/facebook/jest/pull/12103)) ### [`v27.4.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2741) [Compare Source](https://togithub.com/facebook/jest/compare/v27.4.0...v27.4.1) ##### Fixes - `[jest-worker]` Filter `execArgv` correctly ([#12097](https://togithub.com/facebook/jest/pull/12097)) ### [`v27.4.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2740) [Compare Source](https://togithub.com/facebook/jest/compare/v27.3.1...v27.4.0) ##### Features - `[expect]` Enhancing the `toHaveProperty` matcher to support array selection ([#12092](https://togithub.com/facebook/jest/pull/12092)) - `[jest-core]` Add support for `testResultsProcessor` written in ESM ([#12006](https://togithub.com/facebook/jest/pull/12006)) - `[jest-diff, pretty-format]` Add `compareKeys` option for custom sorting of object keys ([#11992](https://togithub.com/facebook/jest/pull/11992)) - `[jest-mock]` Add `ts-jest` mock util functions ([#12089](https://togithub.com/facebook/jest/pull/12089)) ##### Fixes - `[expect]` Allow again `expect.Matchers` generic with single value ([#11986](https://togithub.com/facebook/jest/pull/11986)) - `[jest-circus, jest-jasmine2]` Avoid false concurrent test failures due to unhandled promise rejections ([#11987](https://togithub.com/facebook/jest/pull/11987)) - `[jest-config]` Add missing `slash` dependency to `package.json` ([#12080](https://togithub.com/facebook/jest/pull/12080)) - `[jest-core]` Incorrect detection of open ZLIB handles ([#12022](https://togithub.com/facebook/jest/pull/12022)) - `[jest-diff]` Break dependency cycle ([#10818](https://togithub.com/facebook/jest/pull/10818)) - `[jest-environment-jsdom]` Add `@types/jsdom` dependency ([#11999](https://togithub.com/facebook/jest/pull/11999)) - `[jest-environment-jsdom]` Do not reset the global.document too early on teardown ([#11871](https://togithub.com/facebook/jest/pull/11871)) - `[jest-transform]` Improve error and warning messages ([#11998](https://togithub.com/facebook/jest/pull/11998)) - `[jest-worker]` Pass `execArgv` correctly to `worker_threads` worker ([#12069](https://togithub.com/facebook/jest/pull/12069)) ##### Chore & Maintenance - `[docs]` CLI options alphabetized ([#11586](https://togithub.com/facebook/jest/pull/11586)) - `[jest-runner]` Add info regarding timers to forcedExit message([#12083](https://togithub.com/facebook/jest/pull/12083)) - `[*]` Replaced `substr` method with `substring` ([#12066](https://togithub.com/facebook/jest/pull/12066)) - `[*]` Add `types` entry to all export maps ([#12073](https://togithub.com/facebook/jest/pull/12073)) ### [`v27.3.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2731) [Compare Source](https://togithub.com/facebook/jest/compare/v27.3.0...v27.3.1) ##### Fixes - `[expect]` Make `expect` extension properties `configurable` ([#11978](https://togithub.com/facebook/jest/pull/11978)) - `[expect]` Fix `.any()` checks on primitive wrapper classes ([#11976](https://togithub.com/facebook/jest/pull/11976)) ##### Chore & Maintenance - `[expect]` `BigInt` global is always defined, don't check for its existence at runtime ([#11979](https://togithub.com/facebook/jest/pull/11979)) - `[jest-config, jest-util]` Use `ci-info` instead of `is-ci` to detect CI environment ([#11973](https://togithub.com/facebook/jest/pull/11973)) ### [`v27.3.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2730) [Compare Source](https://togithub.com/facebook/jest/compare/v27.2.5...v27.3.0) ##### Features - `[jest-config]` Add `testEnvironmentOptions.html` to apply to jsdom input ([#11950](https://togithub.com/facebook/jest/pull/11950)) - `[jest-resolver]` Support default export (`.`) in `exports` field *if* `main` is missing ([#11919](https://togithub.com/facebook/jest/pull/11919)) ##### Fixes - `[expect]` Tweak and improve types ([#11949](https://togithub.com/facebook/jest/pull/11949)) - `[jest-runtime]` Ensure absolute paths can be resolved within test modules ([#11943](https://togithub.com/facebook/jest/pull/11943)) - `[jest-runtime]` Fix `instanceof` for `ModernFakeTimers` and `LegacyFakeTimers` methods ([#11946](https://togithub.com/facebook/jest/pull/11946)) ### [`v27.2.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2725) [Compare Source](https://togithub.com/facebook/jest/compare/v27.2.4...v27.2.5) ##### Features - `[jest-config]` Warn when multiple Jest configs are located ([#11922](https://togithub.com/facebook/jest/pull/11922)) ##### Fixes - `[expect]` Pass matcher context to asymmetric matchers ([#11926](https://togithub.com/facebook/jest/pull/11926) & [#11930](https://togithub.com/facebook/jest/pull/11930)) - `[expect]` Improve TypeScript types ([#11931](https://togithub.com/facebook/jest/pull/11931)) - `[expect]` Improve typings of `toThrow()` and `toThrowError()` matchers ([#11929](https://togithub.com/facebook/jest/pull/11929)) - `[jest-cli]` Improve `--help` printout by removing defunct `--browser` option ([#11914](https://togithub.com/facebook/jest/pull/11914)) - `[jest-haste-map]` Use distinct cache paths for different values of `computeDependencies` ([#11916](https://togithub.com/facebook/jest/pull/11916)) - `[@jest/reporters]` Do not buffer `console.log`s when using verbose reporter ([#11054](https://togithub.com/facebook/jest/pull/11054)) ##### Chore & Maintenance - `[expect]` Export default matchers ([#11932](https://togithub.com/facebook/jest/pull/11932)) - `[@jest/types]` Mark deprecated configuration options as `@deprecated` ([#11913](https://togithub.com/facebook/jest/pull/11913)) ### [`v27.2.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2724) [Compare Source](https://togithub.com/facebook/jest/compare/v27.2.3...v27.2.4) ##### Features - `[expect]` Add equality checks for Array Buffers in `expect.ToStrictEqual()` ([#11805](https://togithub.com/facebook/jest/pull/11805)) ##### Fixes - `[jest-snapshot]` Correctly indent inline snapshots ([#11560](https://togithub.com/facebook/jest/pull/11560)) ### [`v27.2.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2723) [Compare Source](https://togithub.com/facebook/jest/compare/v27.2.2...v27.2.3) ##### Features - `[@jest/fake-timers]` Update `@sinonjs/fake-timers` to v8 ([#11879](https://togithub.com/facebook/jest/pull/11879)) ##### Fixes - `[jest-config]` Parse `testEnvironmentOptions` if received from CLI ([#11902](https://togithub.com/facebook/jest/pull/11902)) - `[jest-reporters]` Call `destroy` on `v8-to-istanbul` converters to free memory ([#11896](https://togithub.com/facebook/jest/pull/11896)) ### [`v27.2.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2722) [Compare Source](https://togithub.com/facebook/jest/compare/v27.2.1...v27.2.2) ##### Fixes - `[jest-runtime]` Correct `wrapperLength` value for ESM modules. ([#11893](https://togithub.com/facebook/jest/pull/11893)) ### [`v27.2.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2721) [Compare Source](https://togithub.com/facebook/jest/compare/v27.2.0...v27.2.1) ##### Features - `[jest-transform]` Improve the unexpected token error message. ([#11807](https://togithub.com/facebook/jest/pull/11807)) ##### Fixes - `[jest-runtime]` Fix regression when using `jest.isolateModules` and mocks ([#11882](https://togithub.com/facebook/jest/pull/11882)) - `[jest-runtime]` Include test name when importing modules after test has completed ([#11885](https://togithub.com/facebook/jest/pull/11885)) - `[jest-runtime]` Error when ESM import is used after test is torn down ([#11885](https://togithub.com/facebook/jest/pull/11885)) ### [`v27.2.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2720) [Compare Source](https://togithub.com/facebook/jest/compare/v27.1.1...v27.2.0) ##### Features - `[jest-resolver, jest-runtime]` Pass `conditions` to custom resolvers to enable them to implement support for package.json `exports` field ([#11859](https://togithub.com/facebook/jest/pull/11859)) - `[jest-runtime]` Allow custom envs to specify `exportConditions` which is passed together with Jest's own conditions to custom resolvers ([#11863](https://togithub.com/facebook/jest/pull/11863)) ##### Fixes - `[@jest/reporters]` Use async transform if available to transform files with no coverage ([#11852](https://togithub.com/facebook/jest/pull/11852)) - `[jest-util]` Return correct value from `process.send` stub ([#11799](https://togithub.com/facebook/jest/pull/11799)) ### [`v27.1.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2711) [Compare Source](https://togithub.com/facebook/jest/compare/v27.1.0...v27.1.1) ##### Features - `[jest-runtime]` Add experimental, limited (and undocumented) support for mocking ECMAScript Modules ([#11818](https://togithub.com/facebook/jest/pull/11818)) ##### Fixes - `[jest-resolver]` Support `node:` prefix when importing Node core modules with ESM ([#11817](https://togithub.com/facebook/jest/pull/11817)) - `[jest-types]` Export the `PrettyFormatOptions` interface ([#11801](https://togithub.com/facebook/jest/pull/11801)) ### [`v27.1.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2710) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.6...v27.1.0) ##### Features - `[jest-haste-map]` Use watchman suffix-set option for faster file indexing. ([#11784](https://togithub.com/facebook/jest/pull/11784)) - `[jest-cli]` Adds a new config options `snapshotFormat` which offers a way to override any of the formatting settings which come with [pretty-format](https://www.npmjs.com/package/pretty-format#usage-with-options). ([#11654](https://togithub.com/facebook/jest/pull/11654)) - `[jest-reporters]` Expose the `getSummary` util ([#11695](https://togithub.com/facebook/jest/pull/11695)). - `[jest-resolver]` Support `node:` prefix when importing Node core modules ([#11331](https://togithub.com/facebook/jest/pull/11331)) ##### Fixes - `[jest-each]` Relaxed the validation to allow multibyte characters in headings ([#11575](https://togithub.com/facebook/jest/pull/11575)) - `[jest-environment-jsdom]` Add support for `userAgent` option ([#11773](https://togithub.com/facebook/jest/pull/11773)) - `[jest-environment-node]` Add `Event` and `EventTarget` to node global environment. ([#11727](https://togithub.com/facebook/jest/pull/11727)) - `[jest-mock]` Fix `spyOn` to use `Object.prototype.hasOwnProperty` ([#11721](https://togithub.com/facebook/jest/pull/11721)) - `[jest-resolver]` Add dependency on `jest-haste-map` ([#11759](https://togithub.com/facebook/jest/pull/11759)) - `[jest-types]` Compat with `@types/node` v16 ([#11645](https://togithub.com/facebook/jest/pull/11645)) ##### Chore & Maintenance - `[docs]` Correct `expects.assertions` documentation by adding async/await for asynchronous function. ### [`v27.0.6`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2706) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.5...v27.0.6) ##### Fixes - `[*]` Publish all modules to include the build change in ([#11569](https://togithub.com/facebook/jest/pull/11569)) ### [`v27.0.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2705) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.4...v27.0.5) ##### Features - `[@jest/fake-timers]` Flush callbacks scheduled with `requestAnimationFrame` every 16ms when using legacy timers. ([#11523](https://togithub.com/facebook/jest/pull/11567)) - `[pretty-format]` Use `globalThis` (with polyfill if required) to bring support for esbuild's browser bundling mode ([#11569](https://togithub.com/facebook/jest/pull/11569)) ##### Fixes - `[jest-core]` Support special characters like `@`, `+` and `()` on Windows with `--findRelatedTests` ([#11548](https://togithub.com/facebook/jest/pull/11548)) - `[@jest/fake-timers]` Do not add `setImmediate` and `clearImmediate` if they do not exist in the global environment ([#11599](https://togithub.com/facebook/jest/pull/11599)) - `[@jest/reporters]` Allow `node-notifier@10` as peer dependency ([#11523](https://togithub.com/facebook/jest/pull/11523)) - `[@jest/reporters]` Update `v8-to-istanbul` ([#11523](https://togithub.com/facebook/jest/pull/11523)) ### [`v27.0.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2704) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.3...v27.0.4) ##### Fixes - `[jest-config, jest-resolve]` Pass in `require.resolve` to resolvers to resolve from correct base ([#11493](https://togithub.com/facebook/jest/pull/11493)) ### [`v27.0.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2703) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.2...v27.0.3) ##### Fixes - `[jest-config]` `require.resolve` on default test sequencer and test environment ([#11482](https://togithub.com/facebook/jest/pull/11482)) - `[jest-mock]` Fixed `fn` and `spyOn` exports ([#11480](https://togithub.com/facebook/jest/pull/11480)) ### [`v27.0.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2702) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.1...v27.0.2) ##### Features - `[jest-circus]` Add some APIs to make it easier to build your own test runner - `[jest-reporters]` Expose the `getResultHeader` util ([#11460](https://togithub.com/facebook/jest/pull/11460)) - `[jest-resolver]` Export `resolve*` utils for different Jest modules ([#11466](https://togithub.com/facebook/jest/pull/11466)) - `[@jest/test-result]` Export `Test`, `TestEvents` and `TestFileEvent` ([#11466](https://togithub.com/facebook/jest/pull/11466)) ##### Fixes - `[jest-circus]` Add missing `slash` dependency ([#11465](https://togithub.com/facebook/jest/pull/11465)) - `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://togithub.com/facebook/jest/pull/11466)) - `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://togithub.com/facebook/jest/pull/11465)) - `[jest-config]` Make sure to support functions as config ([#11475](https://togithub.com/facebook/jest/pull/11475)) - `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://togithub.com/facebook/jest/pull/11470)) - `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://togithub.com/facebook/jest/pull/11466)) - `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://togithub.com/facebook/jest/pull/11451)) ### [`v27.0.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2701) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.0...v27.0.1) ##### Fixes - `[jest-environment-jsdom]` Bump version of JSDOM to avoid deprecated `request` package ([#11442](https://togithub.com/facebook/jest/pull/11442)) ### [`v27.0.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2700) [Compare Source](https://togithub.com/facebook/jest/compare/v26.6.3...v27.0.0) ##### Features - `[babel-jest]` Add async transformation ([#11192](https://togithub.com/facebook/jest/pull/11192)) - `[jest-changed-files]` Use '--' to separate paths from revisions ([#11160](https://togithub.com/facebook/jest/pull/11160)) - `[jest-circus]` \[**BREAKING**] Fail tests when multiple `done()` calls are made ([#10624](https://togithub.com/facebook/jest/pull/10624)) - `[jest-circus, jest-jasmine2]` \[**BREAKING**] Fail the test instead of just warning when describe returns a value ([#10947](https://togithub.com/facebook/jest/pull/10947)) - `[jest-config]` \[**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://togithub.com/facebook/jest/pull/9874)) - `[jest-config]` \[**BREAKING**] Use `jest-circus` as default test runner ([#10686](https://togithub.com/facebook/jest/pull/10686)) - `[jest-config]` Add support for `preset` written in ESM ([#11200](https://togithub.com/facebook/jest/pull/11200)) - `[jest-config, jest-runtime]` Support ESM for files other than `.js` and `.mjs` ([#10823](https://togithub.com/facebook/jest/pull/10823)) - `[jest-config, jest-runtime]` \[**BREAKING**] Use "modern" implementation as default for fake timers ([#10874](https://togithub.com/facebook/jest/pull/10874) & [#11197](https://togithub.com/facebook/jest/pull/11197)) - `[jest-config` Allow passing `forceNodeFilesystemAPI` through to `jest-haste-map` ([#11264](https://togithub.com/facebook/jest/pull/11264)) - `[jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types]` \[**BREAKING**] Add custom HasteMap class implementation config option ([#11107](https://togithub.com/facebook/jest/pull/11107)) - `[jest-core]` make `TestWatcher` extend `emittery` ([#10324](https://togithub.com/facebook/jest/pull/10324)) - `[jest-core]` Run failed tests interactively the same way we do with snapshots ([#10858](https://togithub.com/facebook/jest/pull/10858)) - `[jest-core]` more `TestSequencer` methods can be async ([#10980](https://togithub.com/facebook/jest/pull/10980)) - `[jest-core]` Add support for `testSequencer` written in ESM ([#11207](https://togithub.com/facebook/jest/pull/11207)) - `[jest-core]` Add support for `globalSetup` and `globalTeardown` written in ESM ([#11267](https://togithub.com/facebook/jest/pull/11267)) - `[jest-core]` Add support for `watchPlugins` written in ESM ([#11315](https://togithub.com/facebook/jest/pull/11315)) - `[jest-core]` Add support for `runner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-core]` Add support for `reporters` written in ESM ([#11427](https://togithub.com/facebook/jest/pull/11427)) - `[jest-each]` Add support for interpolation with object properties ([#11388](https://togithub.com/facebook/jest/pull/11388)) - `[jest-environment-node]` Add AbortController to globals ([#11182](https://togithub.com/facebook/jest/pull/11182)) - `[@jest/fake-timers]` Update to `@sinonjs/fake-timers` to v7 ([#11198](https://togithub.com/facebook/jest/pull/11198)) - `[jest-haste-map]` Handle injected scm clocks ([#10966](https://togithub.com/facebook/jest/pull/10966)) - `[jest-haste-map]` Add `enableSymlinks` configuration option to follow symlinks for test files ([#9351](https://togithub.com/facebook/jest/pull/9351)) - `[jest-repl, jest-runner]` \[**BREAKING**] Run transforms over environment ([#8751](https://togithub.com/facebook/jest/pull/8751)) - `[jest-repl]` Add support for `testEnvironment` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-reporters]` Add static filepath property to all reporters ([#11015](https://togithub.com/facebook/jest/pull/11015)) - `[jest-runner]` \[**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://togithub.com/facebook/jest/pull/10728)) - `[jest-runner]` \[**BREAKING**] Run transforms over `runner` ([#8823](https://togithub.com/facebook/jest/pull/8823)) - `[jest-runner]` \[**BREAKING**] Run transforms over `testRunner` ([#8823](https://togithub.com/facebook/jest/pull/8823)) - `[jest-runner]` Possibility to use ESM for test environment ([11033](https://togithub.com/facebook/jest/pull/11033)) - `[jest-runner]` Add support for `testRunner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://togithub.com/facebook/jest/pull/10988)) - `[jest-runtime]` Support for async code transformations ([#11191](https://togithub.com/facebook/jest/pull/11191) & [#11220](https://togithub.com/facebook/jest/pull/11220)) - `[jest-snapshot]` \[**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://togithub.com/facebook/jest/pull/7792) & [#11192](https://togithub.com/facebook/jest/pull/11192)) - `[jest-snapshot]` \[**BREAKING**] Run transforms over `snapshotResolver` ([#8751](https://togithub.com/facebook/jest/pull/8829)) - `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://togithub.com/facebook/jest/pull/10926)) - `[jest-transform]` Add support for transformers written in ESM ([#11163](https://togithub.com/facebook/jest/pull/11163)) - `[jest-transform]` \[**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://togithub.com/facebook/jest/pull/11163)) - `[jest-transform]` Async code transformations ([#9889](https://togithub.com/facebook/jest/pull/9889)) - `[jest-transform]` Support transpiled transformers ([#11193](https://togithub.com/facebook/jest/pull/11193)) - `[jest-transform]` \[**BREAKING**] `requireAndTranspileModule` always return a `Promise`, and the third parameter type is changed to `RequireAndTranspileModuleOptions` which accept `applyInteropRequireDefault` option ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-transform]` \[**BREAKING**] `createTranspilingRequire` return function which return a `Promise` now ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-util]` add requireOrImportModule for importing CJS or ESM ([#11199](https://togithub.com/facebook/jest/pull/11199)) - `[jest-util]` add `applyInteropRequireDefault` option on `requireOrImportModule` ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-watcher]` Added support for clearing the line when `Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Renovate will not automatically rebase this PR, because other commits have been found.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.