jestjs/jest (expect)
### [`v28.1.3`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2813)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.1.1...v28.1.3)
##### Features
- `[jest-leak-detector]` Use native `FinalizationRegistry` when it exists to get rid of external C dependency ([#12973](https://redirect.github.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#12757](https://redirect.github.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#12977](https://redirect.github.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#13013](https://redirect.github.com/facebook/jest/pull/13013), [#13020](https://redirect.github.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#12986](https://redirect.github.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#12935](https://redirect.github.com/facebook/jest/pull/12935), [#13004](https://redirect.github.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#13000](https://redirect.github.com/facebook/jest/pull/13000))
### [`v28.1.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2811)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#12848](https://redirect.github.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#12826](https://redirect.github.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#12885](https://redirect.github.com/facebook/jest/pull/12885), [#12905](https://redirect.github.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#12899](https://redirect.github.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#12845](https://redirect.github.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#12901](https://redirect.github.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#12912](https://redirect.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://redirect.github.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#12828](https://redirect.github.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#12835](https://redirect.github.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#12859](https://redirect.github.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#12324](https://redirect.github.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2810)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.0.2...v28.1.0)
##### Features
- `[jest-circus]` Add `failing` test modifier that inverts the behavior of tests ([#12610](https://redirect.github.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#12774](https://redirect.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://redirect.github.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#12763](https://redirect.github.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#12789](https://redirect.github.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#12799](https://redirect.github.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#12782](https://redirect.github.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#12783](https://redirect.github.com/facebook/jest/pull/12783))
### [`v28.0.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2802)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#12753](https://redirect.github.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://redirect.github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#12754](https://redirect.github.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2801)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#12736](https://redirect.github.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#12744](https://redirect.github.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#12748](https://redirect.github.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#12749](https://redirect.github.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#12735](https://redirect.github.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2800)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#12399](https://redirect.github.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#12363](https://redirect.github.com/facebook/jest/pull/12363), [#12376](https://redirect.github.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#12201](https://redirect.github.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#12484](https://redirect.github.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#10797](https://redirect.github.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#12546](https://redirect.github.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#12572](https://redirect.github.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#12354](https://redirect.github.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#12355](https://redirect.github.com/facebook/jest/pull/12355))
- `[jest-config, @jest/types]` Add `ci` to `GlobalConfig` ([#12378](https://redirect.github.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#10817](https://redirect.github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#10817](https://redirect.github.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#12510](https://redirect.github.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#12701](https://redirect.github.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#12620](https://redirect.github.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#12440](https://redirect.github.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#12641](https://redirect.github.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#12652](https://redirect.github.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#12687](https://redirect.github.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#12290](https://redirect.github.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#11924](https://redirect.github.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#12461](https://redirect.github.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#12469](https://redirect.github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#11924](https://redirect.github.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#12461](https://redirect.github.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#12469](https://redirect.github.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#12642](https://redirect.github.com/facebook/jest/pull/12642), [#12696](https://redirect.github.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#12404](https://redirect.github.com/facebook/jest/pull/12404), [#12410](https://redirect.github.com/facebook/jest/pull/12410), [#12418](https://redirect.github.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#12323](https://redirect.github.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#12572](https://redirect.github.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#12572](https://redirect.github.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#12008](https://redirect.github.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#12008](https://redirect.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://redirect.github.com/facebook/jest/pull/12435), [#12489](https://redirect.github.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#12442](https://redirect.github.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#12489](https://redirect.github.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#11080](https://redirect.github.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#12601](https://redirect.github.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#11320](https://redirect.github.com/facebook/jest/pull/11320), [#12658](https://redirect.github.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#12657](https://redirect.github.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#11961](https://redirect.github.com/facebook/jest/pull/11961), [#12373](https://redirect.github.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#12682](https://redirect.github.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#12392](https://redirect.github.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#11540](https://redirect.github.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#12707](https://redirect.github.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#12707](https://redirect.github.com/facebook/jest/pull/12707), ([#12712](https://redirect.github.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#12042](https://redirect.github.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#12470](https://redirect.github.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#12646](https://redirect.github.com/facebook/jest/pull/12646), [#12715](https://redirect.github.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#12720](https://redirect.github.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#12008](https://redirect.github.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#12531](https://redirect.github.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#12685](https://redirect.github.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#12698](https://redirect.github.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#12384](https://redirect.github.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#12692](https://redirect.github.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#12638](https://redirect.github.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#12518](https://redirect.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://redirect.github.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#12343](https://redirect.github.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#10983](https://redirect.github.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#12402](https://redirect.github.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algorithm for compatibility with FIPS systems ([#12722](https://redirect.github.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#12689](https://redirect.github.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#12346](https://redirect.github.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#12488](https://redirect.github.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#8359](https://redirect.github.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#12626](https://redirect.github.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#12322](https://redirect.github.com/facebook/jest/pull/12322))
- `[jest-circus, @jest/types]` Disallow undefined value in `TestContext` type ([#12507](https://redirect.github.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#12378](https://redirect.github.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#12397](https://redirect.github.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#12578](https://redirect.github.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#11084](https://redirect.github.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#12487](https://redirect.github.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#12705](https://redirect.github.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#12517](https://redirect.github.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#12464](https://redirect.github.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#12232](https://redirect.github.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#12386](https://redirect.github.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#12553](https://redirect.github.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#12631](https://redirect.github.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#8923](https://redirect.github.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#12420](https://redirect.github.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#12675](https://redirect.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://redirect.github.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#12518](https://redirect.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://redirect.github.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#12442](https://redirect.github.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#12674](https://redirect.github.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#11733](https://redirect.github.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#12593](https://redirect.github.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#12697](https://redirect.github.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#12654](https://redirect.github.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#12706](https://redirect.github.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#12497](https://redirect.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://redirect.github.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#11142](https://redirect.github.com/facebook/jest/pull/11142), [#12648](https://redirect.github.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#12345](https://redirect.github.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#12447](https://redirect.github.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#12407](https://redirect.github.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#11077](https://redirect.github.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#12217](https://redirect.github.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#12453](https://redirect.github.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#12407](https://redirect.github.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#12633](https://redirect.github.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#12323](https://redirect.github.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#12344](https://redirect.github.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#12404](https://redirect.github.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#12357](https://redirect.github.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#12353](https://redirect.github.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#11981](https://redirect.github.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#12492](https://redirect.github.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#12329](https://redirect.github.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#12340](https://redirect.github.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#12340](https://redirect.github.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#12676](https://redirect.github.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#12357](https://redirect.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://redirect.github.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#12341](https://redirect.github.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#12353](https://redirect.github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#12353](https://redirect.github.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#12640](https://redirect.github.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#12391](https://redirect.github.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#12342](https://redirect.github.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#12357](https://redirect.github.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#12406](https://redirect.github.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#12329](https://redirect.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://redirect.github.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2751)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#12316](https://redirect.github.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#12308](https://redirect.github.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#12304](https://redirect.github.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#12315](https://redirect.github.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#12316](https://redirect.github.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#12311](https://redirect.github.com/facebook/jest/pull/12311) & [#12315](https://redirect.github.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#12313](https://redirect.github.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2750)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.6...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#12243](https://redirect.github.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#12285](https://redirect.github.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#12251](https://redirect.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://redirect.github.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#12292](https://redirect.github.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#12269](https://redirect.github.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#12264](https://redirect.github.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#12277](https://redirect.github.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#11749](https://redirect.github.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#11749](https://redirect.github.com/facebook/jest/pull/11749))
### [`v27.4.6`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2746)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.2...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#12157](https://redirect.github.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#12002](https://redirect.github.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#12213](https://redirect.github.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#12002](https://redirect.github.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#12160](https://redirect.github.com/facebook/jest/pull/12160))
### [`v27.4.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2742)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.1...v27.4.2)
##### Fixes
- `[jest-worker]` Add additional `execArgv` to filter ([#12103](https://redirect.github.com/facebook/jest/pull/12103))
### [`v27.4.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2741)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.0...v27.4.1)
##### Fixes
- `[jest-worker]` Filter `execArgv` correctly ([#12097](https://redirect.github.com/facebook/jest/pull/12097))
### [`v27.4.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2740)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.3.1...v27.4.0)
##### Features
- `[expect]` Enhancing the `toHaveProperty` matcher to support array selection ([#12092](https://redirect.github.com/facebook/jest/pull/12092))
- `[jest-core]` Add support for `testResultsProcessor` written in ESM ([#12006](https://redirect.github.com/facebook/jest/pull/12006))
- `[jest-diff, pretty-format]` Add `compareKeys` option for custom sorting of object keys ([#11992](https://redirect.github.com/facebook/jest/pull/11992))
- `[jest-mock]` Add `ts-jest` mock util functions ([#12089](https://redirect.github.com/facebook/jest/pull/12089))
##### Fixes
- `[expect]` Allow again `expect.Matchers` generic with single value ([#11986](https://redirect.github.com/facebook/jest/pull/11986))
- `[jest-circus, jest-jasmine2]` Avoid false concurrent test failures due to unhandled promise rejections ([#11987](https://redirect.github.com/facebook/jest/pull/11987))
- `[jest-config]` Add missing `slash` dependency to `package.json` ([#12080](https://redirect.github.com/facebook/jest/pull/12080))
- `[jest-core]` Incorrect detection of open ZLIB handles ([#12022](https://redirect.github.com/facebook/jest/pull/12022))
- `[jest-diff]` Break dependency cycle ([#10818](https://redirect.github.com/facebook/jest/pull/10818))
- `[jest-environment-jsdom]` Add `@types/jsdom` dependency ([#11999](https://redirect.github.com/facebook/jest/pull/11999))
- `[jest-environment-jsdom]` Do not reset the global.document too early on teardown ([#11871](https://redirect.github.com/facebook/jest/pull/11871))
- `[jest-transform]` Improve error and warning messages ([#11998](https://redirect.github.com/facebook/jest/pull/11998))
- `[jest-worker]` Pass `execArgv` correctly to `worker_threads` worker ([#12069](https://redirect.github.com/facebook/jest/pull/12069))
##### Chore & Maintenance
- `[docs]` CLI options alphabetized ([#11586](https://redirect.github.com/facebook/jest/pull/11586))
- `[jest-runner]` Add info regarding timers to forcedExit message([#12083](https://redirect.github.com/facebook/jest/pull/12083))
- `[*]` Replaced `substr` method with `substring` ([#12066](https://redirect.github.com/facebook/jest/pull/12066))
- `[*]` Add `types` entry to all export maps ([#12073](https://redirect.github.com/facebook/jest/pull/12073))
### [`v27.3.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2731)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.3.0...v27.3.1)
##### Fixes
- `[expect]` Make `expect` extension properties `configurable` ([#11978](https://redirect.github.com/facebook/jest/pull/11978))
- `[expect]` Fix `.any()` checks on primitive wrapper classes ([#11976](https://redirect.github.com/facebook/jest/pull/11976))
##### Chore & Maintenance
- `[expect]` `BigInt` global is always defined, don't check for its existence at runtime ([#11979](https://redirect.github.com/facebook/jest/pull/11979))
- `[jest-config, jest-util]` Use `ci-info` instead of `is-ci` to detect CI environment ([#11973](https://redirect.github.com/facebook/jest/pull/11973))
### [`v27.3.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2730)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.5...v27.3.0)
##### Features
- `[jest-config]` Add `testEnvironmentOptions.html` to apply to jsdom input ([#11950](https://redirect.github.com/facebook/jest/pull/11950))
- `[jest-resolver]` Support default export (`.`) in `exports` field *if* `main` is missing ([#11919](https://redirect.github.com/facebook/jest/pull/11919))
##### Fixes
- `[expect]` Tweak and improve types ([#11949](https://redirect.github.com/facebook/jest/pull/11949))
- `[jest-runtime]` Ensure absolute paths can be resolved within test modules ([#11943](https://redirect.github.com/facebook/jest/pull/11943))
- `[jest-runtime]` Fix `instanceof` for `ModernFakeTimers` and `LegacyFakeTimers` methods ([#11946](https://redirect.github.com/facebook/jest/pull/11946))
### [`v27.2.5`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2725)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.4...v27.2.5)
##### Features
- `[jest-config]` Warn when multiple Jest configs are located ([#11922](https://redirect.github.com/facebook/jest/pull/11922))
##### Fixes
- `[expect]` Pass matcher context to asymmetric matchers ([#11926](https://redirect.github.com/facebook/jest/pull/11926) & [#11930](https://redirect.github.com/facebook/jest/pull/11930))
- `[expect]` Improve TypeScript types ([#11931](https://redirect.github.com/facebook/jest/pull/11931))
- `[expect]` Improve typings of `toThrow()` and `toThrowError()` matchers ([#11929](https://redirect.github.com/facebook/jest/pull/11929))
- `[jest-cli]` Improve `--help` printout by removing defunct `--browser` option ([#11914](https://redirect.github.com/facebook/jest/pull/11914))
- `[jest-haste-map]` Use distinct cache paths for different values of `computeDependencies` ([#11916](https://redirect.github.com/facebook/jest/pull/11916))
- `[@jest/reporters]` Do not buffer `console.log`s when using verbose reporter ([#11054](https://redirect.github.com/facebook/jest/pull/11054))
##### Chore & Maintenance
- `[expect]` Export default matchers ([#11932](https://redirect.github.com/facebook/jest/pull/11932))
- `[@jest/types]` Mark deprecated configuration options as `@deprecated` ([#11913](https://redirect.github.com/facebook/jest/pull/11913))
### [`v27.2.4`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2724)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.3...v27.2.4)
##### Features
- `[expect]` Add equality checks for Array Buffers in `expect.ToStrictEqual()` ([#11805](https://redirect.github.com/facebook/jest/pull/11805))
##### Fixes
- `[jest-snapshot]` Correctly indent inline snapshots ([#11560](https://redirect.github.com/facebook/jest/pull/11560))
### [`v27.2.3`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2723)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.2...v27.2.3)
##### Features
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` to v8 ([#11879](https://redirect.github.com/facebook/jest/pull/11879))
##### Fixes
- `[jest-config]` Parse `testEnvironmentOptions` if received from CLI ([#11902](https://redirect.github.com/facebook/jest/pull/11902))
- `[jest-reporters]` Call `destroy` on `v8-to-istanbul` converters to free memory ([#11896](https://redirect.github.com/facebook/jest/pull/11896))
### [`v27.2.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2722)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.1...v27.2.2)
##### Fixes
- `[jest-runtime]` Correct `wrapperLength` value for ESM modules. ([#11893](https://redirect.github.com/facebook/jest/pull/11893))
### [`v27.2.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2721)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.0...v27.2.1)
##### Features
- `[jest-transform]` Improve the unexpected token error message. ([#11807](https://redirect.github.com/facebook/jest/pull/11807))
##### Fixes
- `[jest-runtime]` Fix regression when using `jest.isolateModules` and mocks ([#11882](https://redirect.github.com/facebook/jest/pull/11882))
- `[jest-runtime]` Include test name when importing modules after test has completed ([#11885](https://redirect.github.com/facebook/jest/pull/11885))
- `[jest-runtime]` Error when ESM import is used after test is torn down ([#11885](https://redirect.github.com/facebook/jest/pull/11885))
### [`v27.2.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2720)
[Compare Source](https://redirect.github.com/jestjs/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://redirect.github.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://redirect.github.com/facebook/jest/pull/11863))
##### Fixes
- `[@jest/reporters]` Use async transform if available to transform files with no coverage ([#11852](https://redirect.github.com/facebook/jest/pull/11852))
- `[jest-util]` Return correct value from `process.send` stub ([#11799](https://redirect.github.com/facebook/jest/pull/11799))
### [`v27.1.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2711)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.1.0...v27.1.1)
##### Features
- `[jest-runtime]` Add experimental, limited (and undocumented) support for mocking ECMAScript Modules ([#11818](https://redirect.github.com/facebook/jest/pull/11818))
##### Fixes
- `[jest-resolver]` Support `node:` prefix when importing Node core modules with ESM ([#11817](https://redirect.github.com/facebook/jest/pull/11817))
- `[jest-types]` Export the `PrettyFormatOptions` interface ([#11801](https://redirect.github.com/facebook/jest/pull/11801))
### [`v27.1.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2710)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.0.6...v27.1.0)
##### Features
- `[jest-haste-map]` Use watchman suffix-set option for faster file indexing. ([#11784](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11654))
- `[jest-reporters]` Expose the `getSummary` util ([#11695](https://redirect.github.com/facebook/jest/pull/11695)).
- `[jest-resolver]` Support `node:` prefix when importing Node core modules ([#11331](https://redirect.github.com/facebook/jest/pull/11331))
##### Fixes
- `[jest-each]` Relaxed the validation to allow multibyte characters in headings ([#11575](https://redirect.github.com/facebook/jest/pull/11575))
- `[jest-environment-jsdom]` Add support for `userAgent` option ([#11773](https://redirect.github.com/facebook/jest/pull/11773))
- `[jest-environment-node]` Add `Event` and `EventTarget` to node global environment. ([#11727](https://redirect.github.com/facebook/jest/pull/11727))
- `[jest-mock]` Fix `spyOn` to use `Object.prototype.hasOwnProperty` ([#11721](https://redirect.github.com/facebook/jest/pull/11721))
- `[jest-resolver]` Add dependency on `jest-haste-map` ([#11759](https://redirect.github.com/facebook/jest/pull/11759))
- `[jest-types]` Compat with `@types/node` v16 ([#11645](https://redirect.github.com/facebook/jest/pull/11645))
##### Chore & Maintenance
- `[docs]` Correct `expects.assertions` documentation by adding async/await for asynchronous function.
### [`v27.0.6`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2706)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.0.2...v27.0.6)
##### Fixes
- `[*]` Publish all modules to include the build change in ([#11569](https://redirect.github.com/facebook/jest/pull/11569))
### [`v27.0.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2702)
[Compare Source](https://redirect.github.com/jestjs/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://redirect.github.com/facebook/jest/pull/11460))
- `[jest-resolver]` Export `resolve*` utils for different Jest modules ([#11466](https://redirect.github.com/facebook/jest/pull/11466))
- `[@jest/test-result]` Export `Test`, `TestEvents` and `TestFileEvent` ([#11466](https://redirect.github.com/facebook/jest/pull/11466))
##### Fixes
- `[jest-circus]` Add missing `slash` dependency ([#11465](https://redirect.github.com/facebook/jest/pull/11465))
- `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://redirect.github.com/facebook/jest/pull/11466))
- `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://redirect.github.com/facebook/jest/pull/11465))
- `[jest-config]` Make sure to support functions as config ([#11475](https://redirect.github.com/facebook/jest/pull/11475))
- `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://redirect.github.com/facebook/jest/pull/11470))
- `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://redirect.github.com/facebook/jest/pull/11466))
- `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://redirect.github.com/facebook/jest/pull/11451))
### [`v27.0.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2701)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.0.0...v27.0.1)
##### Fixes
- `[jest-environment-jsdom]` Bump version of JSDOM to avoid deprecated `request` package ([#11442](https://redirect.github.com/facebook/jest/pull/11442))
### [`v27.0.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2700)
[Compare Source](https://redirect.github.com/jestjs/jest/compare/v26.6.2...v27.0.0)
##### Features
- `[babel-jest]` Add async transformation ([#11192](https://redirect.github.com/facebook/jest/pull/11192))
- `[jest-changed-files]` Use '--' to separate paths from revisions ([#11160](https://redirect.github.com/facebook/jest/pull/11160))
- `[jest-circus]` \[**BREAKING**] Fail tests when multiple `done()` calls are made ([#10624](https://redirect.github.com/facebook/jest/pull/10624))
- `[jest-circus, jest-jasmine2]` \[**BREAKING**] Fail the test instead of just warning when describe returns a value ([#10947](https://redirect.github.com/facebook/jest/pull/10947))
- `[jest-config]` \[**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://redirect.github.com/facebook/jest/pull/9874))
- `[jest-config]` \[**BREAKING**] Use `jest-circus` as default test runner ([#10686](https://redirect.github.com/facebook/jest/pull/10686))
- `[jest-config]` Add support for `preset` written in ESM ([#11200](https://redirect.github.com/facebook/jest/pull/11200))
- `[jest-config, jest-runtime]` Support ESM for files other than `.js` and `.mjs` ([#10823](https://redirect.github.com/facebook/jest/pull/10823))
- `[jest-config, jest-runtime]` \[**BREAKING**] Use "modern" implementation as default for fake timers ([#10874](https://redirect.github.com/facebook/jest/pull/10874) & [#11197](https://redirect.github.com/facebook/jest/pull/11197))
- `[jest-config` Allow passing `forceNodeFilesystemAPI` through to `jest-haste-map` ([#11264](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11107))
- `[jest-core]` make `TestWatcher` extend `emittery` ([#10324](https://redirect.github.com/facebook/jest/pull/10324))
- `[jest-core]` Run failed tests interactively the same way we do with snapshots ([#10858](https://redirect.github.com/facebook/jest/pull/10858))
- `[jest-core]` more `TestSequencer` methods can be async ([#10980](https://redirect.github.com/facebook/jest/pull/10980))
- `[jest-core]` Add support for `testSequencer` written in ESM ([#11207](https://redirect.github.com/facebook/jest/pull/11207))
- `[jest-core]` Add support for `globalSetup` and `globalTeardown` written in ESM ([#11267](https://redirect.github.com/facebook/jest/pull/11267))
- `[jest-core]` Add support for `watchPlugins` written in ESM ([#11315](https://redirect.github.com/facebook/jest/pull/11315))
- `[jest-core]` Add support for `runner` written in ESM ([#11232](https://redirect.github.com/facebook/jest/pull/11232))
- `[jest-core]` Add support for `reporters` written in ESM ([#11427](https://redirect.github.com/facebook/jest/pull/11427))
- `[jest-each]` Add support for interpolation with object properties ([#11388](https://redirect.github.com/facebook/jest/pull/11388))
- `[jest-environment-node]` Add AbortController to globals ([#11182](https://redirect.github.com/facebook/jest/pull/11182))
- `[@jest/fake-timers]` Update to `@sinonjs/fake-timers` to v7 ([#11198](https://redirect.github.com/facebook/jest/pull/11198))
- `[jest-haste-map]` Handle injected scm clocks ([#10966](https://redirect.github.com/facebook/jest/pull/10966))
- `[jest-haste-map]` Add `enableSymlinks` configuration option to follow symlinks for test files ([#9351](https://redirect.github.com/facebook/jest/pull/9351))
- `[jest-repl, jest-runner]` \[**BREAKING**] Run transforms over environment ([#8751](https://redirect.github.com/facebook/jest/pull/8751))
- `[jest-repl]` Add support for `testEnvironment` written in ESM ([#11232](https://redirect.github.com/facebook/jest/pull/11232))
- `[jest-reporters]` Add static filepath property to all reporters ([#11015](https://redirect.github.com/facebook/jest/pull/11015))
- `[jest-runner]` \[**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://redirect.github.com/facebook/jest/pull/10728))
- `[jest-runner]` \[**BREAKING**] Run transforms over `runner` ([#8823](https://redirect.github.com/facebook/jest/pull/8823))
- `[jest-runner]` \[**BREAKING**] Run transforms over `testRunner` ([#8823](https://redirect.github.com/facebook/jest/pull/8823))
- `[jest-runner]` Possibility to use ESM for test environment ([11033](https://redirect.github.com/facebook/jest/pull/11033))
- `[jest-runner]` Add support for `testRunner` written in ESM ([#11232](https://redirect.github.com/facebook/jest/pull/11232))
- `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://redirect.github.com/facebook/jest/pull/10988))
- `[jest-runtime]` Support for async code transformations ([#11191](https://redirect.github.com/facebook/jest/pull/11191) & [#11220](https://redirect.github.com/facebook/jest/pull/11220))
- `[jest-snapshot]` \[**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://redirect.github.com/facebook/jest/pull/7792) & [#11192](https://redirect.github.com/facebook/jest/pull/11192))
- `[jest-snapshot]` \[**BREAKING**] Run transforms over `snapshotResolver` ([#8829](https://redirect.github.com/facebook/jest/pull/8829))
- `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://redirect.github.com/facebook/jest/pull/10926))
- `[jest-transform]` Add support for transformers written in ESM ([#11163](https://redirect.github.com/facebook/jest/pull/11163))
- `[jest-transform]` \[**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://redirect.github.com/facebook/jest/pull/11163))
- `[jest-transform]` Async code transformations ([#9889](https://redirect.github.com/facebook/jest/pull/9889))
- `[jest-transform]` Support transpiled transformers ([#11193](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11232))
- `[jest-transform]` \[**BREAKING**] `createTranspilingRequire` return function which return a `Promise` now ([#11232](https://redirect.github.com/facebook/jest/pull/11232))
- `[jest-util]` add requireOrImportModule for importing CJS or ESM ([#11199](https://redirect.github.com/facebook/jest/pull/11199))
- `[jest-util]` add `applyInteropRequireDefault` option on `requireOrImportModule` ([#11232](https://redirect.github.com/facebook/jest/pull/11232))
- `[jest-watcher]` Added support for clearing the line when `` is pressed in a watch mode pattern prompt ([#11358](https://redirect.github.com/facebook/jest/pull/11358))
- `[jest-worker]` Add support for custom task queues and adds a `PriorityQueue` implementation. ([#10921](https://redirect.github.com/facebook/jest/pull/10921))
- `[jest-worker]` Add in-order scheduling policy to jest worker ([10902](https://redirect.github.com/facebook/jest/pull/10902))
- `[pretty-format]` Better print for sparse arrays ([11326](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11441))
##### Fixes
- `[babel-plugin-jest-hoist]` Add `__dirname` and `__filename` to whitelisted globals ([#10903](https://redirect.github.com/facebook/jest/pull/10903))
- `[expect]` \[**BREAKING**] Revise `expect.not.objectContaining()` to be the inverse of `expect.objectContaining()`, as documented. ([#10708](https://redirect.github.com/facebook/jest/pull/10708))
- `[expect]` \[**BREAKING**] Make `toContain` more strict with the received type ([#10119](https://redirect.github.com/facebook/jest/pull/10119) & [#10929](https://redirect.github.com/facebook/jest/pull/10929))
- `[expect]` \[**BREAKING**] `matcherResult` on `JestAssertionError` are now strings rather than functions ([#10989](https://redirect.github.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://redirect.github.com/facebook/jest/pull/10806))
- `[jest-circus]` Fix `testLocation` on Windows when using `test.each` ([#10871](https://redirect.github.com/facebook/jest/pull/10871))
- `[jest-cli]` Use testFailureExitCode when bailing from a failed test ([#10958](https://redirect.github.com/facebook/jest/pull/10958))
- `[jest-cli]` Print custom error if error thrown from global hooks is not an error already ([#11003](https://redirect.github.com/facebook/jest/pull/11003))
- `[jest-cli]` Allow running multiple "projects" from programmatic API ([#11307](https://redirect.github.com/facebook/jest/pull/11307))
- `[jest-cli]` Fix missing collectCoverage after init ([#11353](https://redirect.github.com/facebook/jest/pull/11353))
- `[jest-cli, jest-config, jest-types]` Move all default values into `jest-config` ([#9924](https://redirect.github.com/facebook/jest/pull/9924))
- `[jest-config]` \[**BREAKING**] Change default file extension order by moving json behind ts and tsx ([10572](https://redirect.github.com/facebook/jest/pull/10572))
- `[jest-console]` `console.dir` now respects the second argument correctly ([#10638](https://redirect.github.com/facebook/jest/pull/10638))
- `[jest-core]` Don't report PerformanceObserver as open handle ([#11123](https://redirect.github.com/facebook/jest/pull/11123))
- `[jest-core]` Use `WeakRef` to hold timers when detecting open handles ([#11277](https://redirect.github.com/facebook/jest/pull/11277))
- `[jest-core]` Correctly detect open handles that were created in test functions using `done` callbacks ([#11382](https://redirect.github.com/facebook/jest/pull/11382))
- `[jest-core]` Do not collect `RANDOMBYTESREQUEST` as open handles ([#11278](https://redirect.github.com/facebook/jest/pull/11278))
- `[jest-core]` Wait briefly for open handles to close before flagging them when using `--detectOpenHandles` ([#11429](https://redirect.github.com/facebook/jest/pull/11429))
- `[jest-diff]` \[**BREAKING**] Use only named exports ([#11371](https://redirect.github.com/facebook/jest/pull/11371))
- `[jest-e
Configuration
š Schedule: Branch creation - "after 4pm on friday,before 9am on monday,every weekend" in timezone Europe/Paris, Automerge - At any time (no schedule defined).
š¦ Automerge: Disabled by config. Please merge this manually once you are satisfied.
ā» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
š Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
^1.0.0
->^1.0.0 \|\| ^28.0.0
1.20.2
->28.1.3
Release Notes
jestjs/jest (expect)
### [`v28.1.3`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2813) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.1.1...v28.1.3) ##### Features - `[jest-leak-detector]` Use native `FinalizationRegistry` when it exists to get rid of external C dependency ([#12973](https://redirect.github.com/facebook/jest/pull/12973)) ##### Fixes - `[jest-changed-files]` Fix a lock-up after repeated invocations ([#12757](https://redirect.github.com/facebook/jest/issues/12757)) - `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#12977](https://redirect.github.com/facebook/jest/pull/12977)) - `[jest-mock]` Add index signature support for `spyOn` types ([#13013](https://redirect.github.com/facebook/jest/pull/13013), [#13020](https://redirect.github.com/facebook/jest/pull/13020)) - `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#12986](https://redirect.github.com/facebook/jest/pull/12986)) ##### Chore & Maintenance - `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#12935](https://redirect.github.com/facebook/jest/pull/12935), [#13004](https://redirect.github.com/facebook/jest/pull/13004)) - `[docs]` Update spyOn docs ([#13000](https://redirect.github.com/facebook/jest/pull/13000)) ### [`v28.1.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2811) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.1.0...v28.1.1) ##### Features - `[jest]` Expose `Config` type ([#12848](https://redirect.github.com/facebook/jest/pull/12848)) - `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#12826](https://redirect.github.com/facebook/jest/pull/12826)) - `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#12885](https://redirect.github.com/facebook/jest/pull/12885), [#12905](https://redirect.github.com/facebook/jest/pull/12905)) ##### Fixes - `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#12899](https://redirect.github.com/facebook/jest/pull/12899)) - `[jest-docblock]` Handle multiline comments in parseWithComments ([#12845](https://redirect.github.com/facebook/jest/pull/12845)) - `[jest-mock]` Improve `spyOn` error messages ([#12901](https://redirect.github.com/facebook/jest/pull/12901)) - `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#12912](https://redirect.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://redirect.github.com/facebook/jest/pull/12839)) ##### Chore & Maintenance - `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#12828](https://redirect.github.com/facebook/jest/issues/12828) - `[docs]` Document the comments used by coverage providers [#12835](https://redirect.github.com/facebook/jest/issues/12835) - `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#12859](https://redirect.github.com/facebook/jest/pull/12859)) - `[jest-haste-map]` Bump `walker` version ([#12324](https://redirect.github.com/facebook/jest/pull/12324)) ### [`v28.1.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2810) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.0.2...v28.1.0) ##### Features - `[jest-circus]` Add `failing` test modifier that inverts the behavior of tests ([#12610](https://redirect.github.com/facebook/jest/pull/12610)) - `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#12774](https://redirect.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://redirect.github.com/facebook/jest/pull/12807)) - `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#12763](https://redirect.github.com/facebook/jest/pull/12763)) - `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#12789](https://redirect.github.com/facebook/jest/pull/12789)) ##### Chore & Maintenance - `[docs]` Specified documentation about `--filter` CLI docs ([#12799](https://redirect.github.com/facebook/jest/pull/12799)) - `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#12782](https://redirect.github.com/facebook/jest/pull/12782)) - `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#12783](https://redirect.github.com/facebook/jest/pull/12783)) ### [`v28.0.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2802) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.0.1...v28.0.2) ##### Features - `[jest-worker]` Add `JestWorkerFarm` helper type ([#12753](https://redirect.github.com/facebook/jest/pull/12753)) ##### Fixes - `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://redirect.github.com/nodejs/node/issues/40014) that causes memory and performance issues ([#12754](https://redirect.github.com/facebook/jest/pull/12754)) ### [`v28.0.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2801) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v28.0.0...v28.0.1) ##### Features - `[jest-resolve]` Expose `ResolverOptions` type ([#12736](https://redirect.github.com/facebook/jest/pull/12736)) ##### Fixes - `[expect]` Add missing dependency `jest-util` ([#12744](https://redirect.github.com/facebook/jest/pull/12744)) - `[jest-circus]` Improve `test.concurrent` ([#12748](https://redirect.github.com/facebook/jest/pull/12748)) - `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#12749](https://redirect.github.com/facebook/jest/pull/12749)) ##### Chore & Maintenance - `[jest-serializer]` Remove deprecated module from source tree ([#12735](https://redirect.github.com/facebook/jest/pull/12735)) ### [`v28.0.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2800) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.5.1...v28.0.0) ##### Features - `[babel-jest]` Export `createTransformer` function ([#12399](https://redirect.github.com/facebook/jest/pull/12399)) - `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#12363](https://redirect.github.com/facebook/jest/pull/12363), [#12376](https://redirect.github.com/facebook/jest/pull/12376)) - `[jest-circus]` Support error logging before retry ([#12201](https://redirect.github.com/facebook/jest/pull/12201)) - `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#12484](https://redirect.github.com/facebook/jest/pull/12484)) - `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#10797](https://redirect.github.com/facebook/jest/pull/10797)) - `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#12546](https://redirect.github.com/facebook/jest/pull/12546)) - `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#12572](https://redirect.github.com/facebook/jest/pull/12572)) - `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#12354](https://redirect.github.com/facebook/jest/pull/12354)) - `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#12355](https://redirect.github.com/facebook/jest/pull/12355)) - `[jest-config, @jest/types]` Add `ci` to `GlobalConfig` ([#12378](https://redirect.github.com/facebook/jest/pull/12378)) - `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#10817](https://redirect.github.com/facebook/jest/pull/10817)) - `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#10817](https://redirect.github.com/facebook/jest/pull/10817)) - `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#12510](https://redirect.github.com/facebook/jest/pull/12510)) - `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#12701](https://redirect.github.com/facebook/jest/pull/12701)) - `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#12620](https://redirect.github.com/facebook/jest/pull/12620)) - `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#12440](https://redirect.github.com/facebook/jest/pull/12440)) - `[jest-core]` Stabilize test runners with event emitters ([#12641](https://redirect.github.com/facebook/jest/pull/12641)) - `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#12652](https://redirect.github.com/facebook/jest/pull/12652)) - `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#12687](https://redirect.github.com/facebook/jest/pull/12687)) - `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#12290](https://redirect.github.com/facebook/jest/pull/12290)) - `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#11924](https://redirect.github.com/facebook/jest/pull/11924)) - `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#12461](https://redirect.github.com/facebook/jest/pull/12461)) - `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#12469](https://redirect.github.com/facebook/jest/pull/12469)) - `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#11924](https://redirect.github.com/facebook/jest/pull/11924)) - `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#12461](https://redirect.github.com/facebook/jest/pull/12461)) - `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#12469](https://redirect.github.com/facebook/jest/pull/12469)) - `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#12642](https://redirect.github.com/facebook/jest/pull/12642), [#12696](https://redirect.github.com/facebook/jest/pull/12696)) - `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#12404](https://redirect.github.com/facebook/jest/pull/12404), [#12410](https://redirect.github.com/facebook/jest/pull/12410), [#12418](https://redirect.github.com/facebook/jest/pull/12418)) - `[@jest/expect-utils]` New module exporting utils for `expect` ([#12323](https://redirect.github.com/facebook/jest/pull/12323)) - `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#12572](https://redirect.github.com/facebook/jest/pull/12572)) - `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#12572](https://redirect.github.com/facebook/jest/pull/12572)) - `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#12008](https://redirect.github.com/facebook/jest/pull/12008)) - `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#12008](https://redirect.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://redirect.github.com/facebook/jest/pull/12435), [#12489](https://redirect.github.com/facebook/jest/pull/12489)) - `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#12442](https://redirect.github.com/facebook/jest/pull/12442)) - `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#12489](https://redirect.github.com/facebook/jest/pull/12489)) - `[jest-mock]` Add support for auto-mocking async generator functions ([#11080](https://redirect.github.com/facebook/jest/pull/11080)) - `[jest-mock]` Add `contexts` member to mock functions ([#12601](https://redirect.github.com/facebook/jest/pull/12601)) - `[@jest/reporters]` Add GitHub Actions reporter ([#11320](https://redirect.github.com/facebook/jest/pull/11320), [#12658](https://redirect.github.com/facebook/jest/pull/12658)) - `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#12657](https://redirect.github.com/facebook/jest/pull/12657)) - `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#11961](https://redirect.github.com/facebook/jest/pull/11961), [#12373](https://redirect.github.com/facebook/jest/pull/12373)) - `[jest-resolve]` Support package self-reference ([#12682](https://redirect.github.com/facebook/jest/pull/12682)) - `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#12392](https://redirect.github.com/facebook/jest/pull/12392)) - `[jest-resolve, jest-runtime]` Add support for async resolver ([#11540](https://redirect.github.com/facebook/jest/pull/11540)) - `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#12707](https://redirect.github.com/facebook/jest/pull/12707)) - `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#12707](https://redirect.github.com/facebook/jest/pull/12707), ([#12712](https://redirect.github.com/facebook/jest/pull/12712)) - `[jest-runner]` Allow `setupFiles` module to export an async function ([#12042](https://redirect.github.com/facebook/jest/pull/12042)) - `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#12470](https://redirect.github.com/facebook/jest/pull/12470)) - `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#12646](https://redirect.github.com/facebook/jest/pull/12646), [#12715](https://redirect.github.com/facebook/jest/pull/12715)) - `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#12720](https://redirect.github.com/facebook/jest/pull/12720)) - `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#12008](https://redirect.github.com/facebook/jest/pull/12008)) - `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#12531](https://redirect.github.com/facebook/jest/pull/12531)) - `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#12685](https://redirect.github.com/facebook/jest/pull/12685)) - `[jest-runtime]` Add `import.meta.jest` ([#12698](https://redirect.github.com/facebook/jest/pull/12698)) - `[@jest/schemas]` New module for JSON schemas for Jest's config ([#12384](https://redirect.github.com/facebook/jest/pull/12384)) - `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#12692](https://redirect.github.com/facebook/jest/pull/12692)) - `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#12638](https://redirect.github.com/facebook/jest/pull/12638)) - `[jest-test-result]` Add duration property to JSON test output ([#12518](https://redirect.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://redirect.github.com/facebook/jest/pull/12591)) - `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#12343](https://redirect.github.com/facebook/jest/pull/12343)) - `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#10983](https://redirect.github.com/facebook/jest/pull/10983)) - `[pretty-format]` New `maxWidth` parameter ([#12402](https://redirect.github.com/facebook/jest/pull/12402)) ##### Fixes - `[*]` Use `sha256` instead of `md5` as hashing algorithm for compatibility with FIPS systems ([#12722](https://redirect.github.com/facebook/jest/pull/12722)) - `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#12689](https://redirect.github.com/facebook/jest/pull/12689)) - `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#12346](https://redirect.github.com/facebook/jest/pull/12346)) - `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#12488](https://redirect.github.com/facebook/jest/pull/12488)) - `[expect]` Fix `iterableEquality` ignores other properties ([#8359](https://redirect.github.com/facebook/jest/pull/8359)) - `[expect]` Fix print for the `closeTo` matcher ([#12626](https://redirect.github.com/facebook/jest/pull/12626)) - `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#12322](https://redirect.github.com/facebook/jest/pull/12322)) - `[jest-circus, @jest/types]` Disallow undefined value in `TestContext` type ([#12507](https://redirect.github.com/facebook/jest/pull/12507)) - `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#12378](https://redirect.github.com/facebook/jest/pull/12378)) - `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#12397](https://redirect.github.com/facebook/jest/pull/12397)) - `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#12578](https://redirect.github.com/facebook/jest/pull/12578)) - `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#11084](https://redirect.github.com/facebook/jest/pull/11084)) - `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#12487](https://redirect.github.com/facebook/jest/pull/12487)) - `[jest-core]` Do not report unref-ed subprocesses as open handles ([#12705](https://redirect.github.com/facebook/jest/pull/12705)) - `[jest-each]` `%#` is not replaced with index of the test case ([#12517](https://redirect.github.com/facebook/jest/pull/12517)) - `[jest-each]` Fixes error message with incorrect count of missing arguments ([#12464](https://redirect.github.com/facebook/jest/pull/12464)) - `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#12232](https://redirect.github.com/facebook/jest/pull/12232)) - `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#12386](https://redirect.github.com/facebook/jest/pull/12386)) - `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#12553](https://redirect.github.com/facebook/jest/pull/12553)) - `[jest-environment-node]` Add `structuredClone` to globals ([#12631](https://redirect.github.com/facebook/jest/pull/12631)) - `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#8923](https://redirect.github.com/facebook/jest/pull/8923)) - `[jest-haste-map]` Don't use partial results if file crawl errors ([#12420](https://redirect.github.com/facebook/jest/pull/12420)) - `[jest-haste-map]` Make watchman existence check lazy+async ([#12675](https://redirect.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://redirect.github.com/facebook/jest/pull/12125)) - `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#12518](https://redirect.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://redirect.github.com/facebook/jest/pull/12402)) - `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#12442](https://redirect.github.com/facebook/jest/pull/12442)) - `[jest-mock]` Handle overridden `Function.name` property ([#12674](https://redirect.github.com/facebook/jest/pull/12674)) - `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#11733](https://redirect.github.com/facebook/jest/pull/11733)) - `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#12593](https://redirect.github.com/facebook/jest/pull/12593)) - `[@jest/reporters]` Update `v8-to-istanbul` ([#12697](https://redirect.github.com/facebook/jest/pull/12697)) - `[jest-resolver]` Call custom resolver with core node.js modules ([#12654](https://redirect.github.com/facebook/jest/pull/12654)) - `[jest-runner]` Correctly resolve `source-map-support` ([#12706](https://redirect.github.com/facebook/jest/pull/12706)) - `[jest-worker]` Fix `Farm` execution results memory leak ([#12497](https://redirect.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://redirect.github.com/facebook/jest/pull/12220)) - `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#11142](https://redirect.github.com/facebook/jest/pull/11142), [#12648](https://redirect.github.com/facebook/jest/pull/12648)) - `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#12345](https://redirect.github.com/facebook/jest/pull/12345)) - `[*]` Use `globalThis` instead of `global` ([#12447](https://redirect.github.com/facebook/jest/pull/12447)) - `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#12407](https://redirect.github.com/facebook/jest/pull/12407)) - `[docs]` Add note about not mixing `done()` with Promises ([#11077](https://redirect.github.com/facebook/jest/pull/11077)) - `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#12217](https://redirect.github.com/facebook/jest/pull/12217)) - `[docs]` Add clarity for module factory hoisting limitations ([#12453](https://redirect.github.com/facebook/jest/pull/12453)) - `[docs]` Add more information about how code transformers work ([#12407](https://redirect.github.com/facebook/jest/pull/12407)) - `[docs]` Add upgrading guide ([#12633](https://redirect.github.com/facebook/jest/pull/12633)) - `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#12323](https://redirect.github.com/facebook/jest/pull/12323)) - `[expect]` \[**BREAKING**] Migrate to ESM ([#12344](https://redirect.github.com/facebook/jest/pull/12344)) - `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#12404](https://redirect.github.com/facebook/jest/pull/12404)) - `[jest-cli]` Update `yargs` to v17 ([#12357](https://redirect.github.com/facebook/jest/pull/12357)) - `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#12353](https://redirect.github.com/facebook/jest/pull/12353)) - `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#11981](https://redirect.github.com/facebook/jest/pull/11981)) - `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#12492](https://redirect.github.com/facebook/jest/pull/12492)) - `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#12329](https://redirect.github.com/facebook/jest/pull/12329)) - `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#12340](https://redirect.github.com/facebook/jest/pull/12340)) - `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#12340](https://redirect.github.com/facebook/jest/pull/12340)) - `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#12676](https://redirect.github.com/facebook/jest/pull/12676)) - `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#12357](https://redirect.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://redirect.github.com/facebook/jest/pull/12124)) - `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#12341](https://redirect.github.com/facebook/jest/pull/12341)) - `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#12353](https://redirect.github.com/facebook/jest/pull/12353)) - `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#12353](https://redirect.github.com/facebook/jest/pull/12353)) - `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#12640](https://redirect.github.com/facebook/jest/pull/12640)) - `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#12391](https://redirect.github.com/facebook/jest/pull/12391)) - `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#12342](https://redirect.github.com/facebook/jest/pull/12342)) - `[jest-transform]` Update `write-file-atomic` to v4 ([#12357](https://redirect.github.com/facebook/jest/pull/12357)) - `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#12406](https://redirect.github.com/facebook/jest/pull/12406)) - `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#12329](https://redirect.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://redirect.github.com/facebook/jest/pull/12320)) ### [`v27.5.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2751) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.5.0...v27.5.1) ##### Features - `[jest-config]` Support comments in JSON config file ([#12316](https://redirect.github.com/facebook/jest/pull/12316)) - `[pretty-format]` Expose `ConvertAnsi` plugin ([#12308](https://redirect.github.com/facebook/jest/pull/12308)) ##### Fixes - `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#12304](https://redirect.github.com/facebook/jest/pull/12304)) - `[jest-cli]` Load binary via exported API ([#12315](https://redirect.github.com/facebook/jest/pull/12315)) - `[jest-config]` Replace `jsonlint` with `parse-json` ([#12316](https://redirect.github.com/facebook/jest/pull/12316)) - `[jest-repl]` Make module importable ([#12311](https://redirect.github.com/facebook/jest/pull/12311) & [#12315](https://redirect.github.com/facebook/jest/pull/12315)) ##### Chore & Maintenance - `[*]` Avoid anonymous default exports ([#12313](https://redirect.github.com/facebook/jest/pull/12313)) ### [`v27.5.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2750) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.6...v27.5.0) ##### Features - `[expect]` Add asymmetric matcher `expect.closeTo` ([#12243](https://redirect.github.com/facebook/jest/pull/12243)) - `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#12285](https://redirect.github.com/facebook/jest/pull/12285)) ##### Fixes - `[expect]` Add a fix for `.toHaveProperty('')` ([#12251](https://redirect.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://redirect.github.com/facebook/jest/pull/12297)) - `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#12292](https://redirect.github.com/facebook/jest/pull/12292)) - `[jest-environment-node]` Add `atob` and `btoa` ([#12269](https://redirect.github.com/facebook/jest/pull/12269)) - `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#12264](https://redirect.github.com/facebook/jest/pull/12264)) - `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#12277](https://redirect.github.com/facebook/jest/pull/12277)) ##### Chore & Maintenance - `[*]` Update `graceful-fs` to `^4.2.9` ([#11749](https://redirect.github.com/facebook/jest/pull/11749)) ##### Performance - `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#11749](https://redirect.github.com/facebook/jest/pull/11749)) ### [`v27.4.6`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2746) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.2...v27.4.6) ##### Fixes - `[jest-environment-node]` Add `AbortSignal` ([#12157](https://redirect.github.com/facebook/jest/pull/12157)) - `[jest-environment-node]` Add Missing node global `performance` ([#12002](https://redirect.github.com/facebook/jest/pull/12002)) - `[jest-runtime]` Handle missing `mocked` property ([#12213](https://redirect.github.com/facebook/jest/pull/12213)) - `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#12002](https://redirect.github.com/facebook/jest/pull/12002)) ##### Performance - `jest-config` perf: only register ts-node once when loading TS config files ([#12160](https://redirect.github.com/facebook/jest/pull/12160)) ### [`v27.4.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2742) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.1...v27.4.2) ##### Fixes - `[jest-worker]` Add additional `execArgv` to filter ([#12103](https://redirect.github.com/facebook/jest/pull/12103)) ### [`v27.4.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2741) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.4.0...v27.4.1) ##### Fixes - `[jest-worker]` Filter `execArgv` correctly ([#12097](https://redirect.github.com/facebook/jest/pull/12097)) ### [`v27.4.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2740) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.3.1...v27.4.0) ##### Features - `[expect]` Enhancing the `toHaveProperty` matcher to support array selection ([#12092](https://redirect.github.com/facebook/jest/pull/12092)) - `[jest-core]` Add support for `testResultsProcessor` written in ESM ([#12006](https://redirect.github.com/facebook/jest/pull/12006)) - `[jest-diff, pretty-format]` Add `compareKeys` option for custom sorting of object keys ([#11992](https://redirect.github.com/facebook/jest/pull/11992)) - `[jest-mock]` Add `ts-jest` mock util functions ([#12089](https://redirect.github.com/facebook/jest/pull/12089)) ##### Fixes - `[expect]` Allow again `expect.Matchers` generic with single value ([#11986](https://redirect.github.com/facebook/jest/pull/11986)) - `[jest-circus, jest-jasmine2]` Avoid false concurrent test failures due to unhandled promise rejections ([#11987](https://redirect.github.com/facebook/jest/pull/11987)) - `[jest-config]` Add missing `slash` dependency to `package.json` ([#12080](https://redirect.github.com/facebook/jest/pull/12080)) - `[jest-core]` Incorrect detection of open ZLIB handles ([#12022](https://redirect.github.com/facebook/jest/pull/12022)) - `[jest-diff]` Break dependency cycle ([#10818](https://redirect.github.com/facebook/jest/pull/10818)) - `[jest-environment-jsdom]` Add `@types/jsdom` dependency ([#11999](https://redirect.github.com/facebook/jest/pull/11999)) - `[jest-environment-jsdom]` Do not reset the global.document too early on teardown ([#11871](https://redirect.github.com/facebook/jest/pull/11871)) - `[jest-transform]` Improve error and warning messages ([#11998](https://redirect.github.com/facebook/jest/pull/11998)) - `[jest-worker]` Pass `execArgv` correctly to `worker_threads` worker ([#12069](https://redirect.github.com/facebook/jest/pull/12069)) ##### Chore & Maintenance - `[docs]` CLI options alphabetized ([#11586](https://redirect.github.com/facebook/jest/pull/11586)) - `[jest-runner]` Add info regarding timers to forcedExit message([#12083](https://redirect.github.com/facebook/jest/pull/12083)) - `[*]` Replaced `substr` method with `substring` ([#12066](https://redirect.github.com/facebook/jest/pull/12066)) - `[*]` Add `types` entry to all export maps ([#12073](https://redirect.github.com/facebook/jest/pull/12073)) ### [`v27.3.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2731) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.3.0...v27.3.1) ##### Fixes - `[expect]` Make `expect` extension properties `configurable` ([#11978](https://redirect.github.com/facebook/jest/pull/11978)) - `[expect]` Fix `.any()` checks on primitive wrapper classes ([#11976](https://redirect.github.com/facebook/jest/pull/11976)) ##### Chore & Maintenance - `[expect]` `BigInt` global is always defined, don't check for its existence at runtime ([#11979](https://redirect.github.com/facebook/jest/pull/11979)) - `[jest-config, jest-util]` Use `ci-info` instead of `is-ci` to detect CI environment ([#11973](https://redirect.github.com/facebook/jest/pull/11973)) ### [`v27.3.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2730) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.5...v27.3.0) ##### Features - `[jest-config]` Add `testEnvironmentOptions.html` to apply to jsdom input ([#11950](https://redirect.github.com/facebook/jest/pull/11950)) - `[jest-resolver]` Support default export (`.`) in `exports` field *if* `main` is missing ([#11919](https://redirect.github.com/facebook/jest/pull/11919)) ##### Fixes - `[expect]` Tweak and improve types ([#11949](https://redirect.github.com/facebook/jest/pull/11949)) - `[jest-runtime]` Ensure absolute paths can be resolved within test modules ([#11943](https://redirect.github.com/facebook/jest/pull/11943)) - `[jest-runtime]` Fix `instanceof` for `ModernFakeTimers` and `LegacyFakeTimers` methods ([#11946](https://redirect.github.com/facebook/jest/pull/11946)) ### [`v27.2.5`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2725) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.4...v27.2.5) ##### Features - `[jest-config]` Warn when multiple Jest configs are located ([#11922](https://redirect.github.com/facebook/jest/pull/11922)) ##### Fixes - `[expect]` Pass matcher context to asymmetric matchers ([#11926](https://redirect.github.com/facebook/jest/pull/11926) & [#11930](https://redirect.github.com/facebook/jest/pull/11930)) - `[expect]` Improve TypeScript types ([#11931](https://redirect.github.com/facebook/jest/pull/11931)) - `[expect]` Improve typings of `toThrow()` and `toThrowError()` matchers ([#11929](https://redirect.github.com/facebook/jest/pull/11929)) - `[jest-cli]` Improve `--help` printout by removing defunct `--browser` option ([#11914](https://redirect.github.com/facebook/jest/pull/11914)) - `[jest-haste-map]` Use distinct cache paths for different values of `computeDependencies` ([#11916](https://redirect.github.com/facebook/jest/pull/11916)) - `[@jest/reporters]` Do not buffer `console.log`s when using verbose reporter ([#11054](https://redirect.github.com/facebook/jest/pull/11054)) ##### Chore & Maintenance - `[expect]` Export default matchers ([#11932](https://redirect.github.com/facebook/jest/pull/11932)) - `[@jest/types]` Mark deprecated configuration options as `@deprecated` ([#11913](https://redirect.github.com/facebook/jest/pull/11913)) ### [`v27.2.4`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2724) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.3...v27.2.4) ##### Features - `[expect]` Add equality checks for Array Buffers in `expect.ToStrictEqual()` ([#11805](https://redirect.github.com/facebook/jest/pull/11805)) ##### Fixes - `[jest-snapshot]` Correctly indent inline snapshots ([#11560](https://redirect.github.com/facebook/jest/pull/11560)) ### [`v27.2.3`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2723) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.2...v27.2.3) ##### Features - `[@jest/fake-timers]` Update `@sinonjs/fake-timers` to v8 ([#11879](https://redirect.github.com/facebook/jest/pull/11879)) ##### Fixes - `[jest-config]` Parse `testEnvironmentOptions` if received from CLI ([#11902](https://redirect.github.com/facebook/jest/pull/11902)) - `[jest-reporters]` Call `destroy` on `v8-to-istanbul` converters to free memory ([#11896](https://redirect.github.com/facebook/jest/pull/11896)) ### [`v27.2.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2722) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.1...v27.2.2) ##### Fixes - `[jest-runtime]` Correct `wrapperLength` value for ESM modules. ([#11893](https://redirect.github.com/facebook/jest/pull/11893)) ### [`v27.2.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2721) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.2.0...v27.2.1) ##### Features - `[jest-transform]` Improve the unexpected token error message. ([#11807](https://redirect.github.com/facebook/jest/pull/11807)) ##### Fixes - `[jest-runtime]` Fix regression when using `jest.isolateModules` and mocks ([#11882](https://redirect.github.com/facebook/jest/pull/11882)) - `[jest-runtime]` Include test name when importing modules after test has completed ([#11885](https://redirect.github.com/facebook/jest/pull/11885)) - `[jest-runtime]` Error when ESM import is used after test is torn down ([#11885](https://redirect.github.com/facebook/jest/pull/11885)) ### [`v27.2.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2720) [Compare Source](https://redirect.github.com/jestjs/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://redirect.github.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://redirect.github.com/facebook/jest/pull/11863)) ##### Fixes - `[@jest/reporters]` Use async transform if available to transform files with no coverage ([#11852](https://redirect.github.com/facebook/jest/pull/11852)) - `[jest-util]` Return correct value from `process.send` stub ([#11799](https://redirect.github.com/facebook/jest/pull/11799)) ### [`v27.1.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2711) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.1.0...v27.1.1) ##### Features - `[jest-runtime]` Add experimental, limited (and undocumented) support for mocking ECMAScript Modules ([#11818](https://redirect.github.com/facebook/jest/pull/11818)) ##### Fixes - `[jest-resolver]` Support `node:` prefix when importing Node core modules with ESM ([#11817](https://redirect.github.com/facebook/jest/pull/11817)) - `[jest-types]` Export the `PrettyFormatOptions` interface ([#11801](https://redirect.github.com/facebook/jest/pull/11801)) ### [`v27.1.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2710) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.0.6...v27.1.0) ##### Features - `[jest-haste-map]` Use watchman suffix-set option for faster file indexing. ([#11784](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11654)) - `[jest-reporters]` Expose the `getSummary` util ([#11695](https://redirect.github.com/facebook/jest/pull/11695)). - `[jest-resolver]` Support `node:` prefix when importing Node core modules ([#11331](https://redirect.github.com/facebook/jest/pull/11331)) ##### Fixes - `[jest-each]` Relaxed the validation to allow multibyte characters in headings ([#11575](https://redirect.github.com/facebook/jest/pull/11575)) - `[jest-environment-jsdom]` Add support for `userAgent` option ([#11773](https://redirect.github.com/facebook/jest/pull/11773)) - `[jest-environment-node]` Add `Event` and `EventTarget` to node global environment. ([#11727](https://redirect.github.com/facebook/jest/pull/11727)) - `[jest-mock]` Fix `spyOn` to use `Object.prototype.hasOwnProperty` ([#11721](https://redirect.github.com/facebook/jest/pull/11721)) - `[jest-resolver]` Add dependency on `jest-haste-map` ([#11759](https://redirect.github.com/facebook/jest/pull/11759)) - `[jest-types]` Compat with `@types/node` v16 ([#11645](https://redirect.github.com/facebook/jest/pull/11645)) ##### Chore & Maintenance - `[docs]` Correct `expects.assertions` documentation by adding async/await for asynchronous function. ### [`v27.0.6`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2706) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.0.2...v27.0.6) ##### Fixes - `[*]` Publish all modules to include the build change in ([#11569](https://redirect.github.com/facebook/jest/pull/11569)) ### [`v27.0.2`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2702) [Compare Source](https://redirect.github.com/jestjs/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://redirect.github.com/facebook/jest/pull/11460)) - `[jest-resolver]` Export `resolve*` utils for different Jest modules ([#11466](https://redirect.github.com/facebook/jest/pull/11466)) - `[@jest/test-result]` Export `Test`, `TestEvents` and `TestFileEvent` ([#11466](https://redirect.github.com/facebook/jest/pull/11466)) ##### Fixes - `[jest-circus]` Add missing `slash` dependency ([#11465](https://redirect.github.com/facebook/jest/pull/11465)) - `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://redirect.github.com/facebook/jest/pull/11466)) - `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://redirect.github.com/facebook/jest/pull/11465)) - `[jest-config]` Make sure to support functions as config ([#11475](https://redirect.github.com/facebook/jest/pull/11475)) - `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://redirect.github.com/facebook/jest/pull/11470)) - `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://redirect.github.com/facebook/jest/pull/11466)) - `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://redirect.github.com/facebook/jest/pull/11451)) ### [`v27.0.1`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2701) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v27.0.0...v27.0.1) ##### Fixes - `[jest-environment-jsdom]` Bump version of JSDOM to avoid deprecated `request` package ([#11442](https://redirect.github.com/facebook/jest/pull/11442)) ### [`v27.0.0`](https://redirect.github.com/jestjs/jest/blob/HEAD/CHANGELOG.md#2700) [Compare Source](https://redirect.github.com/jestjs/jest/compare/v26.6.2...v27.0.0) ##### Features - `[babel-jest]` Add async transformation ([#11192](https://redirect.github.com/facebook/jest/pull/11192)) - `[jest-changed-files]` Use '--' to separate paths from revisions ([#11160](https://redirect.github.com/facebook/jest/pull/11160)) - `[jest-circus]` \[**BREAKING**] Fail tests when multiple `done()` calls are made ([#10624](https://redirect.github.com/facebook/jest/pull/10624)) - `[jest-circus, jest-jasmine2]` \[**BREAKING**] Fail the test instead of just warning when describe returns a value ([#10947](https://redirect.github.com/facebook/jest/pull/10947)) - `[jest-config]` \[**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://redirect.github.com/facebook/jest/pull/9874)) - `[jest-config]` \[**BREAKING**] Use `jest-circus` as default test runner ([#10686](https://redirect.github.com/facebook/jest/pull/10686)) - `[jest-config]` Add support for `preset` written in ESM ([#11200](https://redirect.github.com/facebook/jest/pull/11200)) - `[jest-config, jest-runtime]` Support ESM for files other than `.js` and `.mjs` ([#10823](https://redirect.github.com/facebook/jest/pull/10823)) - `[jest-config, jest-runtime]` \[**BREAKING**] Use "modern" implementation as default for fake timers ([#10874](https://redirect.github.com/facebook/jest/pull/10874) & [#11197](https://redirect.github.com/facebook/jest/pull/11197)) - `[jest-config` Allow passing `forceNodeFilesystemAPI` through to `jest-haste-map` ([#11264](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11107)) - `[jest-core]` make `TestWatcher` extend `emittery` ([#10324](https://redirect.github.com/facebook/jest/pull/10324)) - `[jest-core]` Run failed tests interactively the same way we do with snapshots ([#10858](https://redirect.github.com/facebook/jest/pull/10858)) - `[jest-core]` more `TestSequencer` methods can be async ([#10980](https://redirect.github.com/facebook/jest/pull/10980)) - `[jest-core]` Add support for `testSequencer` written in ESM ([#11207](https://redirect.github.com/facebook/jest/pull/11207)) - `[jest-core]` Add support for `globalSetup` and `globalTeardown` written in ESM ([#11267](https://redirect.github.com/facebook/jest/pull/11267)) - `[jest-core]` Add support for `watchPlugins` written in ESM ([#11315](https://redirect.github.com/facebook/jest/pull/11315)) - `[jest-core]` Add support for `runner` written in ESM ([#11232](https://redirect.github.com/facebook/jest/pull/11232)) - `[jest-core]` Add support for `reporters` written in ESM ([#11427](https://redirect.github.com/facebook/jest/pull/11427)) - `[jest-each]` Add support for interpolation with object properties ([#11388](https://redirect.github.com/facebook/jest/pull/11388)) - `[jest-environment-node]` Add AbortController to globals ([#11182](https://redirect.github.com/facebook/jest/pull/11182)) - `[@jest/fake-timers]` Update to `@sinonjs/fake-timers` to v7 ([#11198](https://redirect.github.com/facebook/jest/pull/11198)) - `[jest-haste-map]` Handle injected scm clocks ([#10966](https://redirect.github.com/facebook/jest/pull/10966)) - `[jest-haste-map]` Add `enableSymlinks` configuration option to follow symlinks for test files ([#9351](https://redirect.github.com/facebook/jest/pull/9351)) - `[jest-repl, jest-runner]` \[**BREAKING**] Run transforms over environment ([#8751](https://redirect.github.com/facebook/jest/pull/8751)) - `[jest-repl]` Add support for `testEnvironment` written in ESM ([#11232](https://redirect.github.com/facebook/jest/pull/11232)) - `[jest-reporters]` Add static filepath property to all reporters ([#11015](https://redirect.github.com/facebook/jest/pull/11015)) - `[jest-runner]` \[**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://redirect.github.com/facebook/jest/pull/10728)) - `[jest-runner]` \[**BREAKING**] Run transforms over `runner` ([#8823](https://redirect.github.com/facebook/jest/pull/8823)) - `[jest-runner]` \[**BREAKING**] Run transforms over `testRunner` ([#8823](https://redirect.github.com/facebook/jest/pull/8823)) - `[jest-runner]` Possibility to use ESM for test environment ([11033](https://redirect.github.com/facebook/jest/pull/11033)) - `[jest-runner]` Add support for `testRunner` written in ESM ([#11232](https://redirect.github.com/facebook/jest/pull/11232)) - `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://redirect.github.com/facebook/jest/pull/10988)) - `[jest-runtime]` Support for async code transformations ([#11191](https://redirect.github.com/facebook/jest/pull/11191) & [#11220](https://redirect.github.com/facebook/jest/pull/11220)) - `[jest-snapshot]` \[**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://redirect.github.com/facebook/jest/pull/7792) & [#11192](https://redirect.github.com/facebook/jest/pull/11192)) - `[jest-snapshot]` \[**BREAKING**] Run transforms over `snapshotResolver` ([#8829](https://redirect.github.com/facebook/jest/pull/8829)) - `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://redirect.github.com/facebook/jest/pull/10926)) - `[jest-transform]` Add support for transformers written in ESM ([#11163](https://redirect.github.com/facebook/jest/pull/11163)) - `[jest-transform]` \[**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://redirect.github.com/facebook/jest/pull/11163)) - `[jest-transform]` Async code transformations ([#9889](https://redirect.github.com/facebook/jest/pull/9889)) - `[jest-transform]` Support transpiled transformers ([#11193](https://redirect.github.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://redirect.github.com/facebook/jest/pull/11232)) - `[jest-transform]` \[**BREAKING**] `createTranspilingRequire` return function which return a `Promise` now ([#11232](https://redirect.github.com/facebook/jest/pull/11232)) - `[jest-util]` add requireOrImportModule for importing CJS or ESM ([#11199](https://redirect.github.com/facebook/jest/pull/11199)) - `[jest-util]` add `applyInteropRequireDefault` option on `requireOrImportModule` ([#11232](https://redirect.github.com/facebook/jest/pull/11232)) - `[jest-watcher]` Added support for clearing the line when `Configuration
š Schedule: Branch creation - "after 4pm on friday,before 9am on monday,every weekend" in timezone Europe/Paris, Automerge - At any time (no schedule defined).
š¦ Automerge: Disabled by config. Please merge this manually once you are satisfied.
ā» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
š Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.