facebook/jest
### [`v26.3.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2630)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.2.2...v26.3.0)
##### Features
- `[jest-circus, jest-jasmine2]` Include `failureDetails` property in test results ([#9496](https://togithub.com/facebook/jest/pull/9496))
- `[jest-each, jest-jasmine, jest-circus]` Add support for `.concurrent.each` ([#9326](https://togithub.com/facebook/jest/pull/9326))
##### Fixes
- `[jest-config]` Add `.pnp.js` to `transformIgnorePatterns` defaults ([#10383](https://togithub.com/facebook/jest/pull/10383))
- `[jest-leak-detector]` Wait properly for GC runs due to changes in Node 14.7 ([#10366](https://togithub.com/facebook/jest/pull/10366))
- `[jest-worker]` Downgrade minimum node version to 10.13 ([#10352](https://togithub.com/facebook/jest/pull/10352))
- `[docs]` Update snapshot testing documentation([#10359](https://togithub.com/facebook/jest/pull/10359))
### [`v26.2.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2622)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.2.1...v26.2.2)
##### Fixes
- `[jest-cli]` Use correct file name to override existing jest config on init ([#10337](https://togithub.com/facebook/jest/pull/10337))
- `[jest-haste-map]` Properly detect support for native `find` ([#10346](https://togithub.com/facebook/jest/pull/10346))
### [`v26.2.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2621)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.2.0...v26.2.1)
##### Fixes
- `[jest-worker]` Make sure to work with Node TS typings v12 ([#10336](https://togithub.com/facebook/jest/pull/10336))
### [`v26.2.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2620)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.1.0...v26.2.0)
##### Features
- `[jest-core, jest-circus, jest-reporter, jest-runner]` Added support for reporting individual test cases using jest-circus ([#10227](https://togithub.com/facebook/jest/pull/10227))
- `[jest-config, jest-reporter, jest-runner, jest-test-sequencer]` Add `slowTestThreshold` configuration option ([#9366](https://togithub.com/facebook/jest/pull/9366))
- `[jest-haste-map]` Watchman crawler now includes dotfiles ([#10075](https://togithub.com/facebook/jest/pull/10075))
- `[jest-worker]` Added support for workers to send custom messages to parent in jest-worker ([#10293](https://togithub.com/facebook/jest/pull/10293))
- `[jest-worker]` Support passing `resourceLimits` ([#10335](https://togithub.com/facebook/jest/pull/10335))
- `[pretty-format]` Added support for serializing custom elements (web components) ([#10217](https://togithub.com/facebook/jest/pull/10237))
##### Fixes
- `[expect]` Match symbols and bigints in `any()` ([#10223](https://togithub.com/facebook/jest/pull/10223))
- `[jest-changed-files]` Use `git diff` instead of `git log` for `--changedSince` ([#10155](https://togithub.com/facebook/jest/pull/10155))
- `[jest-console]` Add missing `console.timeLog` for compatibility with Node ([#10209](https://togithub.com/facebook/jest/pull/10209))
- `[jest-haste-map]` Check `find` binary supports the `-iname` parameter ([#10308](https://togithub.com/facebook/jest/pull/10308))
- `[jest-snapshot]` Strip added indentation for inline error snapshots ([#10217](https://togithub.com/facebook/jest/pull/10217))
##### Chore & Maintenance
- `[*]` Add missing dependency on `@types/node` ([#10248](https://togithub.com/facebook/jest/pull/10248))
- `[jest-jasmine2]` Convert `PCancelable` to TypeScript ([#10215](https://togithub.com/facebook/jest/pull/10215))
- `[jest-jasmine2]` Refine typings of `queueRunner` ([#10215](https://togithub.com/facebook/jest/pull/10215))
- `[jest-jasmine2]` Remove usage of `Function` type ([#10216](https://togithub.com/facebook/jest/pull/10216))
- `[jest-resolve]` Improve types ([#10239](https://togithub.com/facebook/jest/pull/10239))
- `[docs]` Clarify the [`jest.requireActual(moduleName)`](https://jestjs.io/docs/en/jest-object#jestrequireactualmodulename) example
- `[jest-types]` Refine typings of `coverageReporters` ([#10275](https://togithub.com/facebook/jest/pull/10275))
### [`v26.1.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2610)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.0.1...v26.1.0)
##### Features
- `[jest-mock]` Export `Mock`, `MockInstance`, `SpyInstance` types ([#10138](https://togithub.com/facebook/jest/pull/10138))
- `[jest-config]` Support config files exporting (`async`) `function`s ([#10001](https://togithub.com/facebook/jest/pull/10001))
- `[jest-cli, jest-core]` Add `--selectProjects` CLI argument to filter test suites by project name ([#8612](https://togithub.com/facebook/jest/pull/8612))
- `[jest-cli, jest-init]` Add `coverageProvider` to `jest --init` prompts ([#10044](https://togithub.com/facebook/jest/pull/10044))
##### Fixes
- `[jest-console]` `getConsoleOutput` to receive global stack trace config and use it to format stack trace ([#10081](https://togithub.com/facebook/jest/pull/10081))
- `[jest-jasmine2]` Stop adding `:` after an error that has no message ([#9990](https://togithub.com/facebook/jest/pull/9990))
- `[jest-diff]` Control no diff message color with `commonColor` in diff options ([#9997](https://togithub.com/facebook/jest/pull/9997))
- `[jest-snapshot]` Fix TypeScript compilation ([#10008](https://togithub.com/facebook/jest/pull/10008))
##### Chore & Maintenance
- `[docs]` Correct confusing filename in `enableAutomock` example ([#10055](https://togithub.com/facebook/jest/pull/10055))
- `[jest-core]` 🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉 ([#10000](https://togithub.com/facebook/jest/pull/10000))
- `[jest-core, jest-reporters, jest-test-result, jest-types]` Cleanup `displayName` type ([#10049](https://togithub.com/facebook/jest/pull/10049))
- `[jest-runtime]` Jest-internal sandbox escape hatch ([#9907](https://togithub.com/facebook/jest/pull/9907))
- `[jest-fake-timers]` Update `now` param type to support `Date` in addition to `number`. ([#10169](https://togithub.com/facebook/jest/pull/10169))
- `[docs]` Add param to `setSystemTime` docs and remove preceding period from it and `getRealSystemTime` ([#10169](https://togithub.com/facebook/jest/pull/10169))
- `[jest-snapshot, jest-util]` Replace `make-dir` with `fs.mkdir` ([#10136](https://togithub.com/facebook/jest/pull/10136))
- `[docs]` Added parcel-bundler documentation inside readme.md file
##### Performance
- `[jest-core, jest-transform, jest-haste-map]` Improve Jest startup time and test runtime, particularly when running with coverage, by caching micromatch and avoiding recreating RegExp instances ([#10131](https://togithub.com/facebook/jest/pull/10131))
### [`v26.0.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2601)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.0.0...v26.0.1)
##### Fixes
- `[jest-circus]` Backward compatibility for deprecated `DescribeBlock.tests` to not break e.g. Detox reporter
### [`v26.0.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2600)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.5.1...v26.0.0)
##### Features
- `[jest-environment-jsdom]` [**BREAKING**] Upgrade `jsdom` to v16 ([#9606](https://togithub.com/facebook/jest/pull/9606))
- `[@jest/fake-timers]` Add possibility to use a modern implementation of fake timers, backed by `@sinonjs/fake-timers` ([#7776](https://togithub.com/facebook/jest/pull/7776))
- `[jest-runtime]` Add `createMockFromModule` as an alias for `genMockFromModule` ([#9962](https://togithub.com/facebook/jest/pull/9962))
##### Fixes
- `[babel-jest]` Handle `null` being passed to `createTransformer` ([#9955](https://togithub.com/facebook/jest/pull/9955))
- `[jest-circus, jest-console, jest-jasmine2, jest-reporters, jest-util, pretty-format]` Fix time durating formatting and consolidate time formatting code ([#9765](https://togithub.com/facebook/jest/pull/9765))
- `[jest-circus]` [**BREAKING**] Fail tests if a test takes a done callback and have return values ([#9129](https://togithub.com/facebook/jest/pull/9129))
- `[jest-circus]` [**BREAKING**] Throw a proper error if a test / hook is defined asynchronously ([#8096](https://togithub.com/facebook/jest/pull/8096))
- `[jest-circus]` Throw more descriptive error if hook is defined inside test ([#9957](https://togithub.com/facebook/jest/pull/9957))
- `[jest-circus]` [**BREAKING**] Align execution order of tests to match `jasmine`'s top to bottom order ([#9965](https://togithub.com/facebook/jest/pull/9965))
- `[jest-config, jest-resolve]` [**BREAKING**] Remove support for `browser` field ([#9943](https://togithub.com/facebook/jest/pull/9943))
- `[jest-haste-map]` Stop reporting files as changed when they are only accessed ([#7347](https://togithub.com/facebook/jest/pull/7347))
- `[jest-resolve]` Show relative path from root dir for `module not found` errors ([#9963](https://togithub.com/facebook/jest/pull/9963))
- `[jest-runtime]` Fix absolute path moduleNameMapper + jest.mock bug ([#8727](https://togithub.com/facebook/jest/pull/8727))
##### Chore & Maintenance
- `[*]` [**BREAKING**] TypeScript definitions requires a minimum of TypeScript v3.8 ([#9823](https://togithub.com/facebook/jest/pull/9823))
- `[*]` [**BREAKING**] Drop support for Node 8 ([#9423](https://togithub.com/facebook/jest/pull/9423))
- `[*]` Upgrade to chalk@4 ([#9752](https://togithub.com/facebook/jest/pull/9752))
- `[*]` Remove usage of `realpath-native` ([#9952](https://togithub.com/facebook/jest/pull/9952))
- `[docs]` Fix example reference implementation to use Jest with Phabricator ([#8662](https://togithub.com/facebook/jest/pull/8662))
- `[docs]` Added default compiler to tranform ([#8583](https://togithub.com/facebook/jest/pull/8583))
- `[docs]` Updated Testing Frameworks guide with React; make it generic ([#9106](https://togithub.com/facebook/jest/pull/9106))
- `[expect, jest-mock, pretty-format]` [**BREAKING**] Remove `build-es5` from package ([#9945](https://togithub.com/facebook/jest/pull/9945))
- `[@jest/fake-timers, @jest/environment]` [**BREAKING**] Rename `LolexFakeTimers` to `ModernFakeTimers` ([#9960](https://togithub.com/facebook/jest/pull/9960))
- `[jest-haste-map]` [**BREAKING**] removed `providesModuleNodeModules` ([#8535](https://togithub.com/facebook/jest/pull/8535))
- `[jest-runtime]` [**BREAKING**] Remove long-deprecated `require.requireActual` and `require.requireMock` methods ([#9854](https://togithub.com/facebook/jest/pull/9854))
### [`v25.5.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2551)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.5.0...v25.5.1)
##### Fixes
- `[jest-haste-map]` Add missing `@types/graceful-fs` dependency ([#9913](https://togithub.com/facebook/jest/pull/9913))
- `[jest-runner]` Correctly serialize `Set` passed to worker ([#9915](https://togithub.com/facebook/jest/pull/9915))
- `[jest-runtime]` Vary ESM cache by query ([#9914](https://togithub.com/facebook/jest/pull/9914))
### [`v25.5.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2550)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.4.0...v25.5.0)
##### Features
- `[@jest/globals]` New package so Jest's globals can be explicitly imported ([#9801](https://togithub.com/facebook/jest/pull/9801))
- `[jest-core]` Show coverage of sources related to tests in changed files ([#9769](https://togithub.com/facebook/jest/pull/9769))
- `[jest-runtime]` Populate `require.cache` ([#9841](https://togithub.com/facebook/jest/pull/9841))
##### Fixes
- `[*]` Use `graceful-fs` directly in every package instead of relying on `fs` being monkey patched ([#9443](https://togithub.com/facebook/jest/pull/9443))
- `[expect]` Prints the Symbol name into the error message with a custom asymmetric matcher ([#9888](https://togithub.com/facebook/jest/pull/9888))
- `[jest-circus, jest-jasmine2]` Support older version of `jest-runtime` ([#9903](https://togithub.com/facebook/jest/pull/9903) & [#9842](https://togithub.com/facebook/jest/pull/9842))
- `[@jest/environment]` Make sure not to reference Jest types ([#9875](https://togithub.com/facebook/jest/pull/9875))
- `[jest-message-util]` Code frame printing should respect `--noStackTrace` flag ([#9866](https://togithub.com/facebook/jest/pull/9866))
- `[jest-runtime]` Support importing CJS from ESM using `import` statements ([#9850](https://togithub.com/facebook/jest/pull/9850))
- `[jest-runtime]` Support importing parallel dynamic `import`s ([#9858](https://togithub.com/facebook/jest/pull/9858))
- `[jest-transform]` Improve source map handling when instrumenting transformed code ([#9811](https://togithub.com/facebook/jest/pull/9811))
##### Chore & Maintenance
- `[docs]` Add an example for mocking non-default export class
##### Performance
- `[jest-resolve]` Update `resolve` to a version using native `realpath`, which is faster than the default JS implementation ([#9872](https://togithub.com/facebook/jest/pull/9872))
- `[jest-resolve]` Pass custom cached `realpath` function to `resolve` ([#9873](https://togithub.com/facebook/jest/pull/9873))
- `[jest-runtime]` Add `teardown` method to clear any caches when tests complete ([#9906](https://togithub.com/facebook/jest/pull/9906))
- `[jest-runtime]` Do not pass files required internally through transformation when loading them ([#9900](https://togithub.com/facebook/jest/pull/9900))
- `[jest-runtime]` Use `Map`s instead of object literals as cache holders ([#9901](https://togithub.com/facebook/jest/pull/9901))
### [`v25.4.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2540)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.3.0...v25.4.0)
- `[expect]` Support `async function`s in `toThrow` ([#9817](https://togithub.com/facebook/jest/pull/9817))
- `[jest-console]` Add code frame to `console.error` and `console.warn` ([#9741](https://togithub.com/facebook/jest/pull/9741))
- `[jest-runtime, jest-jasmine2, jest-circus]` Experimental, limited ECMAScript Modules support ([#9772](https://togithub.com/facebook/jest/pull/9772) & [#9842](https://togithub.com/facebook/jest/pull/9842))
##### Fixes
- `[expect]` Restore support for passing functions to `toHaveLength` matcher ([#9796](https://togithub.com/facebook/jest/pull/9796))
- `[jest-changed-files]` `--only-changed` should include staged files ([#9799](https://togithub.com/facebook/jest/pull/9799))
- `[jest-circus]` Throw on nested test definitions ([#9828](https://togithub.com/facebook/jest/pull/9828))
- `[jest-each]` `each` will throw an error when called with too many arguments ([#9818](https://togithub.com/facebook/jest/pull/9818))
- `[jest-runner]` Don't print warning to stdout when using `--json` ([#9843](https://togithub.com/facebook/jest/pull/9843))
##### Chore & Maintenance
- `[*]` Do not generate TypeScript declaration source maps ([#9822](https://togithub.com/facebook/jest/pull/9822))
- `[*]` Transpile code for Node 8.3, not 8.0 ([#9827](https://togithub.com/facebook/jest/pull/9827))
### [`v25.3.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2530)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.2.6...v25.3.0)
##### Features
- `[babel-jest]` Support passing `supportsDynamicImport` and `supportsStaticESM` ([#9766](https://togithub.com/facebook/jest/pull/9766))
- `[babel-preset-jest]` Enable all syntax plugins not enabled by default that works on current version of Node ([#9774](https://togithub.com/facebook/jest/pull/9774))
- `[jest-circus]` Enable writing async test event handlers ([#9397](https://togithub.com/facebook/jest/pull/9397))
- `[jest-runtime, @jest/transformer]` Support passing `supportsDynamicImport` and `supportsStaticESM` ([#9597](https://togithub.com/facebook/jest/pull/9597))
##### Chore & Maintenance
- `[*]` Replace `any`s with `unknown`s ([#9626](https://togithub.com/facebook/jest/pull/9626))
- `[@jest/transform]` Expose type `CacheKeyOptions` for `getCacheKey` ([#9762](https://togithub.com/facebook/jest/pull/9762))
- `[@jest/types]` Correct type `testRegex` for `ProjectConfig` ([#9780](https://togithub.com/facebook/jest/pull/9780))
### [`v25.2.6`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2526)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.2.4...v25.2.6)
##### Chore & Maintenance
- `[*]` 25.2.5 was published without changes from 25.2.4 - 25.2.6 includes all changes from that version.
### [`v25.2.4`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2524)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.2.3...v25.2.4)
##### Features
- `[jest-message-util]` Check for common errors when using the wrong test environment ([#8245](https://togithub.com/facebook/jest/pull/8245))
##### Fixes
- `[jest-circus]` Fix type elision of jest-runtime imports ([#9717](https://togithub.com/facebook/jest/pull/9717))
- `[@jest/transform]` Fix coverage reporter for uncovered files without transformers, reverting [#9460](https://togithub.com/facebook/jest/pull/9460) ([#9724](https://togithub.com/facebook/jest/pull/9724))
### [`v25.2.3`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2523)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.2.1...v25.2.3)
##### Fixes
- `[*]` Verify all packages are properly downleveled for older versions of TypeScript ([#9715](https://togithub.com/facebook/jest/pull/9715))
### [`v25.2.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2521)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.2.0...v25.2.1)
##### Fixes
- `[*]` Downlevel TypeScript definitions files for compatibility with TS<3.8 ([#9705](https://togithub.com/facebook/jest/pull/9705))
### [`v25.2.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2520)
[Compare Source](https://togithub.com/facebook/jest/compare/v25.1.0...v25.2.0)
##### Features
- `[jest-config]` Support ESM config files with `.js` extension ([#9573](https://togithub.com/facebook/jest/pull/9573)).
- `[jest-runtime]` Override `module.createRequire` to return a Jest-compatible `require` function ([#9469](https://togithub.com/facebook/jest/pull/9469))
- `[jest-haste-map]` [**BREAKING**] Remove `mapper` option ([#9581](https://togithub.com/facebook/jest/pull/9581))
- `[*]` Support array of paths for `moduleNameMapper` aliases ([#9465](https://togithub.com/facebook/jest/pull/9465))
- `[jest-reporters]` Adds ability to pass options to the istanbul-reporter through `coverageReporters` ([#9572](https://togithub.com/facebook/jest/pull/9572))
- `[jest-runtime]` Require stack when a module cannot be resolved ([#9681](https://togithub.com/facebook/jest/pull/9681))
- `[jest-transform]` `writeCacheFile` no longer calls `fsync` ([#9695](https://togithub.com/facebook/jest/pull/9695))
##### Fixes
- `[expect]` Handle readonly properties correctly ([#9575](https://togithub.com/facebook/jest/pull/9575))
- `[jest-cli]` Set `coverageProvider` correctly when provided in config ([#9562](https://togithub.com/facebook/jest/pull/9562))
- `[jest-cli]` Allow specifying `.cjs` and `.mjs` config files by `--config` CLI option ([#9578](https://togithub.com/facebook/jest/pull/9578))
- `[jest-cli]` Update yargs to fix CLI flag overriding ([#9519](https://togithub.com/facebook/jest/pull/9519))
- `[jest-config]` Treat `setupFilesAfterEnv` like `setupFiles` when normalizing configs against presets ([#9495](https://togithub.com/facebook/jest/pull/9495))
- `[jest-config]` Support `.mjs` config files on Windows as well ([#9558](https://togithub.com/facebook/jest/pull/9558))
- `[jest-config]` Verify `rootDir` and all `roots` are directories ([#9569](https://togithub.com/facebook/jest/pull/9569))
- `[jest-config]` Ensure pattern of `replacePosixSep` is a string ([#9546](https://togithub.com/facebook/jest/pull/9546))
- `[jest-haste-map]` Fix crash on unix based systems without find ([#9579](https://togithub.com/facebook/jest/pull/9579))
- `[jest-jasmine2]` Fix `--testNamePattern` matching with `concurrent` tests ([#9090](https://togithub.com/facebook/jest/pull/9090))
- `[jest-matcher-utils]` Fix diff highlight of symbol-keyed object. ([#9499](https://togithub.com/facebook/jest/pull/9499))
- `[@jest/reporters]` Notifications should be fire&forget rather than having a timeout ([#9567](https://togithub.com/facebook/jest/pull/9567))
- `[jest-resolve]` Fix module identity preservation with symlinks and browser field resolution ([#9511](https://togithub.com/facebook/jest/pull/9511))
- `[jest-resolve]` Do not confuse directories with files ([#8912](https://togithub.com/facebook/jest/pull/8912))
- `[jest-resolve]` `moduleNameMapper` should take precedence over Node core modules ([#9563](https://togithub.com/facebook/jest/pull/9563))
- `[jest-runtime]` Reset `isolateModules` if it fails ([#9541](https://togithub.com/facebook/jest/pull/9541))
- `[jest-runtime]` Yarn PnP errors displayed to the user ([#9681](https://togithub.com/facebook/jest/pull/9681))
- `[jest-snapshot]` Downgrade semver to v6 to support node 8 ([#9451](https://togithub.com/facebook/jest/pull/9451))
- `[jest-snapshot]` Properly indent new snapshots in the presences of existing ones ([#9523](https://togithub.com/facebook/jest/pull/9523))
- `[jest-transform]` Correct sourcemap behavior for transformed and instrumented code ([#9460](https://togithub.com/facebook/jest/pull/9460))
- `[jest-transform]` Allow instrumentation of transformed files with weird file extensions ([#9589](https://togithub.com/facebook/jest/pull/9589))
- `[@jest/types]` Make `ConfigGlobals` an interface to allow for declaration merging. ([#9570](https://togithub.com/facebook/jest/pull/9570))
- `[pretty-format]` Export `OldPlugin` type ([#9491](https://togithub.com/facebook/jest/pull/9491))
##### Chore & Maintenance
- `[docs]` Warn about unexpected behavior / bug of node-notifier when using the `notify` options.
- `[docs]` Grammatical corrections to Async docs page. ([#9679](https://togithub.com/facebook/jest/pull/9679))
- `[jest-resolver]` Use `resolve` package to implement custom module resolution ([#9520](https://togithub.com/facebook/jest/pull/9520))
- `[jest-runtime]` Move execution of `setupFiles` to `jest-runner` ([#9596](https://togithub.com/facebook/jest/pull/9596))
- `[jest-runtime]` Update anchor link in `helpers` ([#9616](https://togithub.com/facebook/jest/pull/9616))
- `[@jest/reporters]` Remove unused dependencies and type exports ([#9462](https://togithub.com/facebook/jest/pull/9462))
- `[website]` Update pictures of reports when matchers fail ([#9214](https://togithub.com/facebook/jest/pull/9214))
##### Performance
- `[jest-haste-map]` Reduce number of `lstat` calls in node crawler ([#9514](https://togithub.com/facebook/jest/pull/9514))
### [`v25.1.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2510)
[Compare Source](https://togithub.com/facebook/jest/compare/ff9269be05fd8316e95232198fce3463bf2f270e...v25.1.0)
##### Features
- `[babel-plugin-jest-hoist]` Show codeframe on static hoisting issues ([#8865](https://togithub.com/facebook/jest/pull/8865))
- `[babel-plugin-jest-hoist]` Add `BigInt` to `ALLOWED_IDENTIFIERS` ([#8382](https://togithub.com/facebook/jest/pull/8382))
- `[babel-preset-jest]` Add `@babel/plugin-syntax-bigint` ([#8382](https://togithub.com/facebook/jest/pull/8382))
- `[expect]` Add `BigInt` support to `toBeGreaterThan`, `toBeGreaterThanOrEqual`, `toBeLessThan` and `toBeLessThanOrEqual` ([#8382](https://togithub.com/facebook/jest/pull/8382))
- `[expect, jest-matcher-utils]` Display change counts in annotation lines ([#9035](https://togithub.com/facebook/jest/pull/9035))
- `[expect, jest-snapshot]` Support custom inline snapshot matchers ([#9278](https://togithub.com/facebook/jest/pull/9278))
- `[jest-config]` Throw the full error message and stack when a Jest preset is missing a dependency ([#8924](https://togithub.com/facebook/jest/pull/8924))
- `[jest-config]` [**BREAKING**] Set default display name color based on runner ([#8689](https://togithub.com/facebook/jest/pull/8689))
- `[jest-config]` Merge preset globals with project globals ([#9027](https://togithub.com/facebook/jest/pull/9027))
- `[jest-config]` Support `.cjs` config files ([#9291](https://togithub.com/facebook/jest/pull/9291))
- `[jest-config]` [**BREAKING**] Support `.mjs` config files ([#9431](https://togithub.com/facebook/jest/pull/9431))
- `[jest-core]` Support reporters as default exports ([#9161](https://togithub.com/facebook/jest/pull/9161))
- `[jest-core]` Support `--findRelatedTests` paths case insensitivity on Windows ([#8900](https://togithub.com/facebook/jest/issues/8900))
- `[jest-diff]` Add options for colors and symbols ([#8841](https://togithub.com/facebook/jest/pull/8841))
- `[jest-diff]` [**BREAKING**] Export as ECMAScript module ([#8873](https://togithub.com/facebook/jest/pull/8873))
- `[jest-diff]` Add `includeChangeCounts` and rename `Indicator` options ([#8881](https://togithub.com/facebook/jest/pull/8881))
- `[jest-diff]` Add `changeColor` and `patchColor` options ([#8911](https://togithub.com/facebook/jest/pull/8911))
- `[jest-diff]` Add `trailingSpaceFormatter` option and replace cyan with `commonColor` ([#8927](https://togithub.com/facebook/jest/pull/8927))
- `[jest-diff]` Add `firstOrLastEmptyLineReplacement` option and export 3 `diffLines` functions ([#8955](https://togithub.com/facebook/jest/pull/8955))
- `[jest-environment]` Add optional `getVmContext` next to `runScript` ([#9252](https://togithub.com/facebook/jest/pull/9252) & [#9428](https://togithub.com/facebook/jest/pull/9428))
- `[jest-environment-jsdom]` Add `fakeTimersLolex` ([#8925](https://togithub.com/facebook/jest/pull/8925))
- `[jest-environment-node]` Add `fakeTimersLolex` ([#8925](https://togithub.com/facebook/jest/pull/8925))
- `[jest-environment-node]` Add `queueMicrotask` ([#9140](https://togithub.com/facebook/jest/pull/9140))
- `[jest-environment-node]` Implement `getVmContext` ([#9252](https://togithub.com/facebook/jest/pull/9252) & [#9428](https://togithub.com/facebook/jest/pull/9428))
- `[@jest/fake-timers]` Add Lolex as implementation of fake timers ([#8897](https://togithub.com/facebook/jest/pull/8897))
- `[jest-get-type]` Add `BigInt` support. ([#8382](https://togithub.com/facebook/jest/pull/8382))
- `[jest-matcher-utils]` Add `BigInt` support to `ensureNumbers` `ensureActualIsNumber`, `ensureExpectedIsNumber` ([#8382](https://togithub.com/facebook/jest/pull/8382))
- `[jest-matcher-utils]` Ignore highlighting matched asymmetricMatcher in diffs ([#9257](https://togithub.com/facebook/jest/pull/9257))
- `[jest-reporters]` Export utils for path formatting ([#9162](https://togithub.com/facebook/jest/pull/9162))
- `[jest-reporters]` Provides global coverage thresholds as watermarks for istanbul ([#9416](https://togithub.com/facebook/jest/pull/9416))
- `[jest-runner]` Warn if a worker had to be force exited ([#8206](https://togithub.com/facebook/jest/pull/8206))
- `[jest-runtime]` [**BREAKING**] Do not export `ScriptTransformer` - it can be imported from `@jest/transform` instead ([#9256](https://togithub.com/facebook/jest/pull/9256))
- `[jest-runtime]` Use `JestEnvironment.getVmContext` and `vm.compileFunction` if available to avoid the module wrapper ([#9252](https://togithub.com/facebook/jest/pull/9252) & [#9428](https://togithub.com/facebook/jest/pull/9428))
- `[jest-snapshot]` Display change counts in annotation lines ([#8982](https://togithub.com/facebook/jest/pull/8982))
- `[jest-snapshot]` [**BREAKING**] Improve report when the matcher has properties ([#9104](https://togithub.com/facebook/jest/pull/9104))
- `[jest-snapshot]` Improve colors when snapshots are updatable ([#9132](https://togithub.com/facebook/jest/pull/9132))
- `[jest-snapshot]` Ignore indentation for most serialized objects ([#9203](https://togithub.com/facebook/jest/pull/9203))
- `[jest-transform]` Create `createTranspilingRequire` function for easy transpiling modules ([#9194](https://togithub.com/facebook/jest/pull/9194))
- `[jest-transform]` [**BREAKING**] Return transformed code as a string, do not wrap in `vm.Script` ([#9253](https://togithub.com/facebook/jest/pull/9253))
- `[@jest/test-result]` Create method to create empty `TestResult` ([#8867](https://togithub.com/facebook/jest/pull/8867))
- `[jest-worker]` [**BREAKING**] Return a promise from `end()`, resolving with the information whether workers exited gracefully ([#8206](https://togithub.com/facebook/jest/pull/8206))
- `[jest-reporters]` Transform file paths into hyperlinks ([#8980](https://togithub.com/facebook/jest/pull/8980))
##### Fixes
- `[expect]` Display `expectedDiff` more carefully in `toBeCloseTo` ([#8389](https://togithub.com/facebook/jest/pull/8389))
- `[expect]` Avoid incorrect difference for subset when `toMatchObject` fails ([#9005](https://togithub.com/facebook/jest/pull/9005))
- `[expect]` Consider all RegExp flags for equality ([#9167](https://togithub.com/facebook/jest/pull/9167))
- `[expect]` [**BREAKING**] Consider primitives different from wrappers instantiated with `new` ([#9167](https://togithub.com/facebook/jest/pull/9167))
- `[expect]` Prevent maintaining RegExp state between multiple tests ([#9289](https://togithub.com/facebook/jest/pull/9289))
- `[expect]` Fix subsetEquality false circular reference detection ([#9322](https://togithub.com/facebook/jest/pull/9322))
- `[jest-config]` Use half of the available cores when `watchAll` mode is enabled ([#9117](https://togithub.com/facebook/jest/pull/9117))
- `[jest-config]` Fix Jest multi project runner still cannot handle exactly one project ([#8894](https://togithub.com/facebook/jest/pull/8894))
- `[jest-console]` Add missing `console.group` calls to `NullConsole` ([#9024](https://togithub.com/facebook/jest/pull/9024))
- `[jest-core]` Don't include unref'd timers in --detectOpenHandles results ([#8941](https://togithub.com/facebook/jest/pull/8941))
- `[jest-core]` Limit number of workers when creating haste maps in projects ([#9259](https://togithub.com/facebook/jest/pull/9259))
- `[jest-diff]` Do not inverse format if line consists of one change ([#8903](https://togithub.com/facebook/jest/pull/8903))
- `[jest-diff]` Rename some new options and change their default values ([#9077](https://togithub.com/facebook/jest/pull/9077))
- `[jest-environment-node]` Fix `TextEncoder.encode` not referencing same global `Uint8Array` constructor ([#9261](https://togithub.com/facebook/jest/pull/9261))
- `[jest-fake-timers]` `getTimerCount` will not include cancelled immediates ([#8764](https://togithub.com/facebook/jest/pull/8764))
- `[jest-fake-timers]` Support `util.promisify` on `setTimeout` ([#9180](https://togithub.com/facebook/jest/pull/9180))
- `[jest-jasmine2, jest-circus]` Improve error message format for Node's assert.fail ([#9262](https://togithub.com/facebook/jest/pull/9262))
- `[jest-leak-detector]` [**BREAKING**] Use `weak-napi` instead of `weak` package ([#8686](https://togithub.com/facebook/jest/pull/8686))
- `[jest-mock]` Fix for mockReturnValue overriding mockImplementationOnce ([#8398](https://togithub.com/facebook/jest/pull/8398))
- `[jest-reporters]` Make node-notifier an optional dependency ([#8918](https://togithub.com/facebook/jest/pull/8918))
- `[jest-reporters]` Make all arguments to methods on `BaseReporter` optional ([#9159](https://togithub.com/facebook/jest/pull/9159))
- `[jest-resolve]`: Set MODULE_NOT_FOUND as error code when module is not resolved from paths ([#8487](https://togithub.com/facebook/jest/pull/8487))
- `[jest-resolve-dependencies]` Handle dynamic dependencies correctly even when using module maps ([#9303](https://togithub.com/facebook/jest/pull/9303))
- `[jest-snapshot]` Remove only the added newlines in multiline snapshots ([#8859](https://togithub.com/facebook/jest/pull/8859))
- `[jest-snapshot]` Distinguish empty string from external snapshot not written ([#8880](https://togithub.com/facebook/jest/pull/8880))
- `[jest-snapshot]` [**BREAKING**] Distinguish empty string from internal snapshot not written ([#8898](https://togithub.com/facebook/jest/pull/8898))
- `[jest-snapshot]` [**BREAKING**] Remove `report` method and throw matcher errors ([#9049](https://togithub.com/facebook/jest/pull/9049))
- `[jest-snapshot]` Omit irrelevant `received` properties when property matchers fail ([#9198](https://togithub.com/facebook/jest/pull/9198))
- `[jest-transform]` Properly cache transformed files across tests ([#8890](https://togithub.com/facebook/jest/pull/8890))
- `[jest-transform]` Don't fail the test suite when a generated source map is invalid ([#9058](https://togithub.com/facebook/jest/pull/9058))
- `[jest-types]` [**BREAKING**] Use less `null | undefined` in config types ([#9200](https://togithub.com/facebook/jest/pull/9200))
- `[jest-util]` Allow querying process.domain ([#9136](https://togithub.com/facebook/jest/pull/9136))
- `[pretty-format]` Correctly detect memoized elements ([#9196](https://togithub.com/facebook/jest/pull/9196))
- `[pretty-format]` Fix pretty-format to respect displayName on forwardRef ([#9422](https://togithub.com/facebook/jest/pull/9422))
##### Chore & Maintenance
- `[*]` [**BREAKING**] Drop support for Node 6 ([#8455](https://togithub.com/facebook/jest/pull/8455))
- `[*]` Add Node 12 to CI ([#8411](https://togithub.com/facebook/jest/pull/8411))
- `[*]` [**BREAKING**] Upgrade to Micromatch v4 ([#8852](https://togithub.com/facebook/jest/pull/8852))
- `[babel-plugin-jest-hoist]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874))
- `[docs]` Add alias and optional boolean value to `coverage` CLI Reference ([#8996](https://togithub.com/facebook/jest/pull/8996))
- `[docs]` Fix broken link pointing to legacy JS file in "Snapshot Testing".
- `[docs]` Add `setupFilesAfterEnv` and `jest.setTimeout` example ([#8971](https://togithub.com/facebook/jest/pull/8971))
- `[expect]` Test that `toStrictEqual` is equivalent to Node's `assert.deepStrictEqual` ([#9167](https://togithub.com/facebook/jest/pull/9167))
- `[jest]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874))
- `[jest-cli]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874))
- `[jest-cli]` [**BREAKING**] Remove re-exports from `@jest/core` ([#8874](https://togithub.com/facebook/jest/pull/8874))
- `[jest-diff]` Remove the need to export `splitLines0` function ([#9151](https://togithub.com/facebook/jest/pull/9151))
- `[jest-environment-jsdom]` [**BREAKING**] Upgrade JSDOM from v11 to v15 ([#8851](https://togithub.com/facebook/jest/pull/8851))
- `[jest-haste-map]` Upgrade to `fsevents@2` ([#9215](https://togithub.com/facebook/jest/pull/9215))
- `[jest-reporters]` [**BREAKING**] Upgrade Istanbul dependencies, which are used for code coverage ([#9192](https://togithub.com/facebook/jest/pull/9192))
- `[jest-util]` [**BREAKING**] Remove deprecated exports ([#8863](https://togithub.com/facebook/jest/pull/8863))
- `[jest-validate]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874))
- `[jest-types]` Mark `InitialOptions` as `Partial` ([#8848](https://togithub.com/facebook/jest/pull/8848))
- `[jest-config]` Refactor `normalize` to be more type safe ([#8848](https://togithub.com/facebook/jest/pull/8848))
### [`v25.0.0`](https://togithub.com/facebook/jest/compare/v24.9.0...ff9269be05fd8316e95232198fce3463bf2f270e)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.9.0...ff9269be05fd8316e95232198fce3463bf2f270e)
### [`v24.9.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2490)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.8.0...v24.9.0)
##### Features
- `[expect]` Highlight substring differences when matcher fails, part 1 ([#8448](https://togithub.com/facebook/jest/pull/8448))
- `[expect]` Highlight substring differences when matcher fails, part 2 ([#8528](https://togithub.com/facebook/jest/pull/8528))
- `[expect]` Improve report when mock-spy matcher fails, part 1 ([#8640](https://togithub.com/facebook/jest/pull/8640))
- `[expect]` Improve report when mock-spy matcher fails, part 2 ([#8649](https://togithub.com/facebook/jest/pull/8649))
- `[expect]` Improve report when mock-spy matcher fails, part 3 ([#8697](https://togithub.com/facebook/jest/pull/8697))
- `[expect]` Improve report when mock-spy matcher fails, part 4 ([#8710](https://togithub.com/facebook/jest/pull/8710))
- `[expect]` Throw matcher error when received cannot be jasmine spy ([#8747](https://togithub.com/facebook/jest/pull/8747))
- `[expect]` Improve report when negative CalledWith assertion fails ([#8755](https://togithub.com/facebook/jest/pull/8755))
- `[expect]` Improve report when positive CalledWith assertion fails ([#8771](https://togithub.com/facebook/jest/pull/8771))
- `[expect]` Display equal values for ReturnedWith similar to CalledWith ([#8791](https://togithub.com/facebook/jest/pull/8791))
- `[expect, jest-snapshot]` Change color from green for some args in matcher hints ([#8812](https://togithub.com/facebook/jest/pull/8812))
- `[jest-snapshot]` Highlight substring differences when matcher fails, part 3 ([#8569](https://togithub.com/facebook/jest/pull/8569))
- `[jest-core]` Improve report when snapshots are obsolete ([#8448](https://togithub.com/facebook/jest/pull/8665))
- `[jest-cli]` Improve chai support (with detailed output, to match jest exceptions) ([#8454](https://togithub.com/facebook/jest/pull/8454))
- `[*]` Manage the global timeout with `--testTimeout` command line argument. ([#8456](https://togithub.com/facebook/jest/pull/8456))
- `[pretty-format]` Render custom displayName of memoized components ([#8546](https://togithub.com/facebook/jest/pull/8546))
- `[jest-validate]` Allow `maxWorkers` as part of the `jest.config.js` ([#8565](https://togithub.com/facebook/jest/pull/8565))
- `[jest-runtime]` Allow passing configuration objects to transformers ([#7288](https://togithub.com/facebook/jest/pull/7288))
- `[@jest/core, @jest/test-sequencer]` Support async sort in custom `testSequencer` ([#8642](https://togithub.com/facebook/jest/pull/8642))
- `[jest-runtime, @jest/fake-timers]` Add `jest.advanceTimersToNextTimer` ([#8713](https://togithub.com/facebook/jest/pull/8713))
- `[@jest-transform]` Extract transforming require logic within `jest-core` into `@jest-transform` ([#8756](https://togithub.com/facebook/jest/pull/8756))
- `[jest-matcher-utils]` Add color options to `matcherHint` ([#8795](https://togithub.com/facebook/jest/pull/8795))
- `[jest-circus/jest-jasmine2]` Give clearer output for Node assert errors ([#8792](https://togithub.com/facebook/jest/pull/8792))
- `[jest-runner]` Export all types in the type signature of `jest-runner` ([#8825](https://togithub.com/facebook/jest/pull/8825))
##### Fixes
- `[jest-cli]` Detect side-effect only imports when running `--onlyChanged` or `--changedSince` ([#8670](https://togithub.com/facebook/jest/pull/8670))
- `[jest-cli]` Allow `--maxWorkers` to work with % input again ([#8565](https://togithub.com/facebook/jest/pull/8565))
- `[babel-plugin-jest-hoist]` Expand list of whitelisted globals in global mocks ([#8429](https://togithub.com/facebook/jest/pull/8429))
- `[jest-core]` Make watch plugin initialization errors look nice ([#8422](https://togithub.com/facebook/jest/pull/8422))
- `[jest-snapshot]` Prevent inline snapshots from drifting when inline snapshots are updated ([#8492](https://togithub.com/facebook/jest/pull/8492))
- `[jest-haste-map]` Don't throw on missing mapper in Node crawler ([#8558](https://togithub.com/facebook/jest/pull/8558))
- `[jest-core]` Fix incorrect `passWithNoTests` warning ([#8595](https://togithub.com/facebook/jest/pull/8595))
- `[jest-snapshots]` Fix test retries that contain snapshots ([#8629](https://togithub.com/facebook/jest/pull/8629))
- `[jest-mock]` Fix incorrect assignments when restoring mocks in instances where they originally didn't exist ([#8631](https://togithub.com/facebook/jest/pull/8631))
- `[expect]` Fix stack overflow when matching objects with circular references ([#8687](https://togithub.com/facebook/jest/pull/8687))
- `[jest-haste-map]` Workaround a node >=12.5.0 bug that causes the process not to exit after tests have completed and cancerous memory growth ([#8787](https://togithub.com/facebook/jest/pull/8787))
##### Chore & Maintenance
- `[docs]` Replace FlowType with TypeScript in CONTRIBUTING.MD code conventions
- `[jest-leak-detector]` remove code repeat ([#8438](https://togithub.com/facebook/jest/pull/8438))
- `[docs]` Add example to `jest.requireActual` ([#8482](https://togithub.com/facebook/jest/pull/8482))
- `[docs]` Add example to `jest.mock` for mocking ES6 modules with the `factory` parameter ([#8550](https://togithub.com/facebook/jest/pull/8550))
- `[docs]` Add information about using `jest.doMock` with ES6 imports ([#8573](https://togithub.com/facebook/jest/pull/8573))
- `[docs]` Fix variable name in custom-matcher-api code example ([#8582](https://togithub.com/facebook/jest/pull/8582))
- `[docs]` Fix example used in custom environment docs ([#8617](https://togithub.com/facebook/jest/pull/8617))
- `[docs]` Updated react tutorial to refer to new package of react-testing-library ([@testing-library/react](https://togithub.com/testing-library/react)) ([#8753](https://togithub.com/facebook/jest/pull/8753))
- `[docs]` Updated imports of react-testing-library to [@testing-library/react](https://togithub.com/testing-library/react) in website ([#8757](https://togithub.com/facebook/jest/pull/8757))
- `[jest-core]` Add `getVersion` (moved from `jest-cli`) ([#8706](https://togithub.com/facebook/jest/pull/8706))
- `[docs]` Fix MockFunctions example that was using toContain instead of toContainEqual ([#8765](https://togithub.com/facebook/jest/pull/8765))
- `[*]` Make sure copyright header comment includes license ([#8783](https://togithub.com/facebook/jest/pull/8783))
- `[*]` Check copyright and license as one joined substring ([#8815](https://togithub.com/facebook/jest/pull/8815))
- `[docs]` Fix WatchPlugins `jestHooks.shouldRunTestSuite` example that receives an object ([#8784](https://togithub.com/facebook/jest/pull/8784))
- `[*]` Enforce LF line endings ([#8809](https://togithub.com/facebook/jest/pull/8809))
- `[pretty-format]` Delete obsolete link and simplify structure in README ([#8824](https://togithub.com/facebook/jest/pull/8824))
- `[docs]` Fix broken transform link on webpack page ([#9155](https://togithub.com/facebook/jest/pull/9155))
##### Performance
- `[jest-watcher]` Minor optimization for JestHook ([#8746](https://togithub.com/facebook/jest/pull/8746))
- `[@jest/reporters]` Prevent runaway CPU useage with `--notify` on macOS ([#8830](https://togithub.com/facebook/jest/issues/8830))
### [`v24.8.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2480)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.7.1...v24.8.0)
##### Features
- `[jest-circus]` Bind to Circus events via an optional event handler on any custom env ([#8344](https://togithub.com/facebook/jest/pull/8344))
- `[expect]` Improve report when matcher fails, part 15 ([#8281](https://togithub.com/facebook/jest/pull/8281))
- `[jest-cli]` Update `--forceExit` and "did not exit for one second" message colors ([#8329](https://togithub.com/facebook/jest/pull/8329))
- `[expect]` Improve report when matcher fails, part 16 ([#8306](https://togithub.com/facebook/jest/pull/8306))
- `[jest-runner]` Pass docblock pragmas to TestEnvironment constructor ([#8320](https://togithub.com/facebook/jest/pull/8320))
- `[docs]` Add DynamoDB guide ([#8319](https://togithub.com/facebook/jest/pull/8319))
- `[expect]` Improve report when matcher fails, part 17 ([#8349](https://togithub.com/facebook/jest/pull/8349))
- `[expect]` Improve report when matcher fails, part 18 ([#8356](https://togithub.com/facebook/jest/pull/8356))
- `[expect]` Improve report when matcher fails, part 19 ([#8367](https://togithub.com/facebook/jest/pull/8367))
##### Fixes
- `[jest-each]` Fix bug with placeholder values ([#8289](https://togithub.com/facebook/jest/pull/8289))
- `[jest-snapshot]` Inline snapshots: do not indent empty lines ([#8277](https://togithub.com/facebook/jest/pull/8277))
- `[@jest/runtime, @jest/transform]` Allow custom transforms for JSON dependencies ([#8278](https://togithub.com/facebook/jest/pull/8278))
- `[jest-core]` Make `detectOpenHandles` imply `runInBand` ([#8283](https://togithub.com/facebook/jest/pull/8283))
- `[jest-haste-map]` Fix the `mapper` option which was incorrectly ignored ([#8299](https://togithub.com/facebook/jest/pull/8299))
- `[jest-jasmine2]` Fix describe return value warning being shown if the describe function throws ([#8335](https://togithub.com/facebook/jest/pull/8335))
- `[jest-environment-jsdom]` Re-declare global prototype of JSDOMEnvironment ([#8352](https://togithub.com/facebook/jest/pull/8352))
- `[jest-snapshot]` Handle arrays when merging snapshots ([#7089](https://togithub.com/facebook/jest/pull/7089))
- `[expect]` Extract names of async and generator functions ([#8362](https://togithub.com/facebook/jest/pull/8362))
- `[jest-runtime]` Fix virtual mocks not being unmockable after previously being mocked ([#8396](https://togithub.com/facebook/jest/pull/8396))
- `[jest-transform]` Replace special characters in transform cache filenames to support Windows ([#8353](https://togithub.com/facebook/jest/pull/8353))
- `[jest-config]` Allow exactly one project ([#7498](https://togithub.com/facebook/jest/pull/7498))
##### Chore & Maintenance
- `[expect]` Fix label and add opposite assertion for toEqual tests ([#8288](https://togithub.com/facebook/jest/pull/8288))
- `[docs]` Mention Jest MongoDB Preset ([#8318](https://togithub.com/facebook/jest/pull/8318))
- `[@jest/reporters]` Migrate away from `istanbul-api` ([#8294](https://togithub.com/facebook/jest/pull/8294))
- `[*]` Delete obsolete emails tag from header comment in test files ([#8377](https://togithub.com/facebook/jest/pull/8377))
- `[expect]` optimize compare nodes ([#8368](https://togithub.com/facebook/jest/pull/8368))
- `[docs]` Fix typo in MockFunctionAPI.md ([#8406](https://togithub.com/facebook/jest/pull/8406))
- `[LICENSE]` Follow copyright header guidelines and delete For Jest software ([#8428](https://togithub.com/facebook/jest/pull/8428))
##### Performance
- `[jest-runtime]` Fix module registry memory leak ([#8282](https://togithub.com/facebook/jest/pull/8282))
- `[jest-resolve]` optimize resolve module path ([#8388](https://togithub.com/facebook/jest/pull/8388))
- `[jest-resolve]` cache current directory ([#8412](https://togithub.com/facebook/jest/pull/8412))
- `[jest-get-type]` Simplify checking for primitive ([#8416](https://togithub.com/facebook/jest/pull/8416))
### [`v24.7.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2471)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.7.0...v24.7.1)
##### Fixes
- `[@jest/config]` Normalize `testSequencer` to its absolute path ([#8267](https://togithub.com/facebook/jest/pull/8267))
- `[@jest/console]` Print to stderr when calling `console.error`, `console.warn` or `console.assert` using the `jest-runtime` CLI ([#8261](https://togithub.com/facebook/jest/pull/8261))
### [`v24.7.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2470)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.6.0...v24.7.0)
##### Features
- `[@jest/core, @jest/test-sequencer]` Move `testSequencer` to individual package `@jest/test-sequencer` ([#8223](https://togithub.com/facebook/jest/pull/8223))
- `[@jest/core, jest-cli, jest-config]` Add option `testSequencer` allow user use custom sequencer. ([#8223](https://togithub.com/facebook/jest/pull/8223))
##### Fixes
- `[expect]` Add negative equality tests for iterables ([#8260](https://togithub.com/facebook/jest/pull/8260))
- `[jest-haste-map]` Resolve fs watcher EMFILE error ([#8258](https://togithub.com/facebook/jest/pull/8258))
##### Chore & Maintenance
- `[expect]` Remove repetition of matcherName and options in matchers ([#8224](https://togithub.com/facebook/jest/pull/8224))
##### Performance
### [`v24.6.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2460)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.5.0...v24.6.0)
##### Features
- `[expect]`: Improve report when matcher fails, part 13 ([#8077](https://togithub.com/facebook/jest/pull/8077))
- `[@jest/core]` Filter API pre-filter setup hook ([#8142](https://togithub.com/facebook/jest/pull/8142))
- `[jest-snapshot]` Improve report when matcher fails, part 14 ([#8132](https://togithub.com/facebook/jest/pull/8132))
- `[@jest/reporter]` Display todo and skip test descriptions when verbose is true ([#8038](https://togithub.com/facebook/jest/pull/8038))
- `[jest-runner]` Support default exports for test environments ([#8163](https://togithub.com/facebook/jest/pull/8163))
- `[pretty-format]` Support React.Suspense ([#8180](https://togithub.com/facebook/jest/pull/8180))
- `[jest-snapshot]` Indent inline snapshots ([#8198](https://togithub.com/facebook/jest/pull/8198))
- `[jest-config]` Support colors in `displayName` configuration ([#8025](https://togithub.com/facebook/jest/pull/8025))
##### Fixes
- `[jest-circus]` Fix test retries with beforeAll/beforeEach failures ([#8227](https://togithub.com/facebook/jest/pull/8227))
- `[expect]` Fix circular references in iterable equality ([#8160](https://togithub.com/facebook/jest/pull/8160))
- `[jest-changed-files]` Change method of obtaining git root ([#8052](https://togithub.com/facebook/jest/pull/8052))
- `[jest-each]` Fix test function type ([#8145](https://togithub.com/facebook/jest/pull/8145))
- `[jest-fake-timers]` `getTimerCount` not taking immediates and ticks into account ([#8139](https://togithub.com/facebook/jest/pull/8139))
- `[jest-runtime]` Allow json file as manual mock ([#8159](https://togithub.com/facebook/jest/pull/8159))
- `[pretty-format]` Print `BigInt` as a readable number instead of `{}` ([#8138](https://togithub.com/facebook/jest/pull/8138))
- `[jest-core]` Fix ability to transform dependencies required from globalSetup script ([#8143](https://togithub.com/facebook/jest/pull/8143))
- `[@jest/reporters]` Fix Cannot read property converageData of null ([#8168](https://togithub.com/facebook/jest/pull/8168))
- `[jest-worker]` `JEST_WORKER_ID` starts at 1 ([#8205](https://togithub.com/facebook/jest/pull/8205))
- `[jest-config]` Use default cwd even if config contains a cwd property ([#7923](https://togithub.com/facebook/jest/pull/7923))
- `[jest-resolve-dependencies]`: Remove internal peer dependencies ([#8215](https://togithub.com/facebook/jest/pull/8215))
- `[jest-resolve]`: Remove internal peer dependencies ([#8215](https://togithub.com/facebook/jest/pull/8215))
- `[jest-snapshot]`: Remove internal peer dependencies ([#8215](https://togithub.com/facebook/jest/pull/8215))
- `[jest-resolve]` Fix requireActual with moduleNameMapper ([#8210](https://togithub.com/facebook/jest/pull/8210))
- `[jest-haste-map]` Fix haste map duplicate detection in watch mode ([#8237](https://togithub.com/facebook/jest/pull/8237))
##### Chore & Maintenance
- `[*]` Remove flow from code base ([#8061](https://togithub.com/facebook/jest/pull/8061))
- `[*]` Use property initializer syntax in Jest codebase ([#8117](https://togithub.com/facebook/jest/pull/8117))
- `[*]` Move [@types/node](https://togithub.com/types/node) to the root package.json ([#8129](https://togithub.com/facebook/jest/pull/8129))
- `[*]` Add documentation and tests related to auto-mocking ([#8099](https://togithub.com/facebook/jest/pull/8099))
- `[*]` Add `jest-watch-typeahead` as a devDependency ([#6449](https://togithub.com/facebook/jest/pull/6449))
- `[*]` upgrade TS to 3.4.0-dev\* for incremental builds ([#8149](https://togithub.com/facebook/jest/pull/8149))
- `[docs]` Improve description of optional arguments in ExpectAPI.md ([#8126](https://togithub.com/facebook/jest/pull/8126))
##### Performance
- `[jest-haste-map]` Optimize haste map data structure for serialization/deserialization ([#8171](https://togithub.com/facebook/jest/pull/8171))
- `[jest-haste-map]` Avoid persisting haste map or processing files when not changed ([#8153](https://togithub.com/facebook/jest/pull/8153))
- `[jest-core]` Improve performance of SearchSource.findMatchingTests by 15% ([#8184](https://togithub.com/facebook/jest/pull/8184))
- `[jest-resolve]` Optimize internal cache lookup performance ([#8183](https://togithub.com/facebook/jest/pull/8183))
- `[jest-core]` Dramatically improve watch mode performance ([#8201](https://togithub.com/facebook/jest/pull/8201))
- `[jest-transform]` Cache regular expression instead of creating anew for every file in ScriptTransformer ([#8235](https://togithub.com/facebook/jest/pull/8235))
- `[jest-core]` Fix memory leak of source map info and minor performance improvements ([#8234](https://togithub.com/facebook/jest/pull/8234))
- `[jest-console]` Fix memory leak by releasing console output reference when printed to stdout ([#8233](https://togithub.com/facebook/jest/pull/8233))
- `[jest-runtime]` Use `Map` instead of `Object` for module registry ([#8232](https://togithub.com/facebook/jest/pull/8232))
### [`v24.5.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2450)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.4.0...v24.5.0)
##### Features
- `[jest-haste-map]` Expose `throwOnModuleCollision` via `config.haste` ([#8113](https://togithub.com/facebook/jest/pull/8113))
##### Chore & Maintenance
- `[expect]` Export `Matchers` interface from `expect` ([#8093](https://togithub.com/facebook/jest/pull/8093))
### [`v24.4.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2440)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.3.1...v24.4.0)
##### Features
- `[jest-resolve]` Now supports PnP environment without plugins ([#8094](https://togithub.com/facebook/jest/pull/8094))
##### Fixes
- `[expect]` Compare DOM nodes even if there are multiple Node classes ([#8064](https://togithub.com/facebook/jest/pull/8064))
- `[jest-worker]` `worker.getStdout()` can return `null` ([#8083](https://togithub.com/facebook/jest/pull/8083))
- `[jest-worker]` Re-attach stdout and stderr from new processes/threads created after retries ([#8087](https://togithub.com/facebook/jest/pull/8087))
- `[jest-reporters/jest-runner]` Serialize `changedFiles` passed to workers ([#8090](https://togithub.com/facebook/jest/pull/8090))
##### Chore & Maintenance
- `[*]` Make sure to include `d.ts` files in the tarball when building ([#8086](https://togithub.com/facebook/jest/pull/8086))
### [`v24.3.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2431)
[Compare Source](https://togithub.com/facebook/jest/compare/v24.3.0...v24.3.1)
##### Fixes
- `[jest-cli]` export functions compatible with `import {default}` ([#8080]
Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:ghost: Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
^23.0.0
->^26.0.0
^23.5.0
->^26.0.0
Release Notes
facebook/jest
### [`v26.3.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2630) [Compare Source](https://togithub.com/facebook/jest/compare/v26.2.2...v26.3.0) ##### Features - `[jest-circus, jest-jasmine2]` Include `failureDetails` property in test results ([#9496](https://togithub.com/facebook/jest/pull/9496)) - `[jest-each, jest-jasmine, jest-circus]` Add support for `.concurrent.each` ([#9326](https://togithub.com/facebook/jest/pull/9326)) ##### Fixes - `[jest-config]` Add `.pnp.js` to `transformIgnorePatterns` defaults ([#10383](https://togithub.com/facebook/jest/pull/10383)) - `[jest-leak-detector]` Wait properly for GC runs due to changes in Node 14.7 ([#10366](https://togithub.com/facebook/jest/pull/10366)) - `[jest-worker]` Downgrade minimum node version to 10.13 ([#10352](https://togithub.com/facebook/jest/pull/10352)) - `[docs]` Update snapshot testing documentation([#10359](https://togithub.com/facebook/jest/pull/10359)) ### [`v26.2.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2622) [Compare Source](https://togithub.com/facebook/jest/compare/v26.2.1...v26.2.2) ##### Fixes - `[jest-cli]` Use correct file name to override existing jest config on init ([#10337](https://togithub.com/facebook/jest/pull/10337)) - `[jest-haste-map]` Properly detect support for native `find` ([#10346](https://togithub.com/facebook/jest/pull/10346)) ### [`v26.2.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2621) [Compare Source](https://togithub.com/facebook/jest/compare/v26.2.0...v26.2.1) ##### Fixes - `[jest-worker]` Make sure to work with Node TS typings v12 ([#10336](https://togithub.com/facebook/jest/pull/10336)) ### [`v26.2.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2620) [Compare Source](https://togithub.com/facebook/jest/compare/v26.1.0...v26.2.0) ##### Features - `[jest-core, jest-circus, jest-reporter, jest-runner]` Added support for reporting individual test cases using jest-circus ([#10227](https://togithub.com/facebook/jest/pull/10227)) - `[jest-config, jest-reporter, jest-runner, jest-test-sequencer]` Add `slowTestThreshold` configuration option ([#9366](https://togithub.com/facebook/jest/pull/9366)) - `[jest-haste-map]` Watchman crawler now includes dotfiles ([#10075](https://togithub.com/facebook/jest/pull/10075)) - `[jest-worker]` Added support for workers to send custom messages to parent in jest-worker ([#10293](https://togithub.com/facebook/jest/pull/10293)) - `[jest-worker]` Support passing `resourceLimits` ([#10335](https://togithub.com/facebook/jest/pull/10335)) - `[pretty-format]` Added support for serializing custom elements (web components) ([#10217](https://togithub.com/facebook/jest/pull/10237)) ##### Fixes - `[expect]` Match symbols and bigints in `any()` ([#10223](https://togithub.com/facebook/jest/pull/10223)) - `[jest-changed-files]` Use `git diff` instead of `git log` for `--changedSince` ([#10155](https://togithub.com/facebook/jest/pull/10155)) - `[jest-console]` Add missing `console.timeLog` for compatibility with Node ([#10209](https://togithub.com/facebook/jest/pull/10209)) - `[jest-haste-map]` Check `find` binary supports the `-iname` parameter ([#10308](https://togithub.com/facebook/jest/pull/10308)) - `[jest-snapshot]` Strip added indentation for inline error snapshots ([#10217](https://togithub.com/facebook/jest/pull/10217)) ##### Chore & Maintenance - `[*]` Add missing dependency on `@types/node` ([#10248](https://togithub.com/facebook/jest/pull/10248)) - `[jest-jasmine2]` Convert `PCancelable` to TypeScript ([#10215](https://togithub.com/facebook/jest/pull/10215)) - `[jest-jasmine2]` Refine typings of `queueRunner` ([#10215](https://togithub.com/facebook/jest/pull/10215)) - `[jest-jasmine2]` Remove usage of `Function` type ([#10216](https://togithub.com/facebook/jest/pull/10216)) - `[jest-resolve]` Improve types ([#10239](https://togithub.com/facebook/jest/pull/10239)) - `[docs]` Clarify the [`jest.requireActual(moduleName)`](https://jestjs.io/docs/en/jest-object#jestrequireactualmodulename) example - `[jest-types]` Refine typings of `coverageReporters` ([#10275](https://togithub.com/facebook/jest/pull/10275)) ### [`v26.1.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2610) [Compare Source](https://togithub.com/facebook/jest/compare/v26.0.1...v26.1.0) ##### Features - `[jest-mock]` Export `Mock`, `MockInstance`, `SpyInstance` types ([#10138](https://togithub.com/facebook/jest/pull/10138)) - `[jest-config]` Support config files exporting (`async`) `function`s ([#10001](https://togithub.com/facebook/jest/pull/10001)) - `[jest-cli, jest-core]` Add `--selectProjects` CLI argument to filter test suites by project name ([#8612](https://togithub.com/facebook/jest/pull/8612)) - `[jest-cli, jest-init]` Add `coverageProvider` to `jest --init` prompts ([#10044](https://togithub.com/facebook/jest/pull/10044)) ##### Fixes - `[jest-console]` `getConsoleOutput` to receive global stack trace config and use it to format stack trace ([#10081](https://togithub.com/facebook/jest/pull/10081)) - `[jest-jasmine2]` Stop adding `:` after an error that has no message ([#9990](https://togithub.com/facebook/jest/pull/9990)) - `[jest-diff]` Control no diff message color with `commonColor` in diff options ([#9997](https://togithub.com/facebook/jest/pull/9997)) - `[jest-snapshot]` Fix TypeScript compilation ([#10008](https://togithub.com/facebook/jest/pull/10008)) ##### Chore & Maintenance - `[docs]` Correct confusing filename in `enableAutomock` example ([#10055](https://togithub.com/facebook/jest/pull/10055)) - `[jest-core]` 🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉 ([#10000](https://togithub.com/facebook/jest/pull/10000)) - `[jest-core, jest-reporters, jest-test-result, jest-types]` Cleanup `displayName` type ([#10049](https://togithub.com/facebook/jest/pull/10049)) - `[jest-runtime]` Jest-internal sandbox escape hatch ([#9907](https://togithub.com/facebook/jest/pull/9907)) - `[jest-fake-timers]` Update `now` param type to support `Date` in addition to `number`. ([#10169](https://togithub.com/facebook/jest/pull/10169)) - `[docs]` Add param to `setSystemTime` docs and remove preceding period from it and `getRealSystemTime` ([#10169](https://togithub.com/facebook/jest/pull/10169)) - `[jest-snapshot, jest-util]` Replace `make-dir` with `fs.mkdir` ([#10136](https://togithub.com/facebook/jest/pull/10136)) - `[docs]` Added parcel-bundler documentation inside readme.md file ##### Performance - `[jest-core, jest-transform, jest-haste-map]` Improve Jest startup time and test runtime, particularly when running with coverage, by caching micromatch and avoiding recreating RegExp instances ([#10131](https://togithub.com/facebook/jest/pull/10131)) ### [`v26.0.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2601) [Compare Source](https://togithub.com/facebook/jest/compare/v26.0.0...v26.0.1) ##### Fixes - `[jest-circus]` Backward compatibility for deprecated `DescribeBlock.tests` to not break e.g. Detox reporter ### [`v26.0.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2600) [Compare Source](https://togithub.com/facebook/jest/compare/v25.5.1...v26.0.0) ##### Features - `[jest-environment-jsdom]` [**BREAKING**] Upgrade `jsdom` to v16 ([#9606](https://togithub.com/facebook/jest/pull/9606)) - `[@jest/fake-timers]` Add possibility to use a modern implementation of fake timers, backed by `@sinonjs/fake-timers` ([#7776](https://togithub.com/facebook/jest/pull/7776)) - `[jest-runtime]` Add `createMockFromModule` as an alias for `genMockFromModule` ([#9962](https://togithub.com/facebook/jest/pull/9962)) ##### Fixes - `[babel-jest]` Handle `null` being passed to `createTransformer` ([#9955](https://togithub.com/facebook/jest/pull/9955)) - `[jest-circus, jest-console, jest-jasmine2, jest-reporters, jest-util, pretty-format]` Fix time durating formatting and consolidate time formatting code ([#9765](https://togithub.com/facebook/jest/pull/9765)) - `[jest-circus]` [**BREAKING**] Fail tests if a test takes a done callback and have return values ([#9129](https://togithub.com/facebook/jest/pull/9129)) - `[jest-circus]` [**BREAKING**] Throw a proper error if a test / hook is defined asynchronously ([#8096](https://togithub.com/facebook/jest/pull/8096)) - `[jest-circus]` Throw more descriptive error if hook is defined inside test ([#9957](https://togithub.com/facebook/jest/pull/9957)) - `[jest-circus]` [**BREAKING**] Align execution order of tests to match `jasmine`'s top to bottom order ([#9965](https://togithub.com/facebook/jest/pull/9965)) - `[jest-config, jest-resolve]` [**BREAKING**] Remove support for `browser` field ([#9943](https://togithub.com/facebook/jest/pull/9943)) - `[jest-haste-map]` Stop reporting files as changed when they are only accessed ([#7347](https://togithub.com/facebook/jest/pull/7347)) - `[jest-resolve]` Show relative path from root dir for `module not found` errors ([#9963](https://togithub.com/facebook/jest/pull/9963)) - `[jest-runtime]` Fix absolute path moduleNameMapper + jest.mock bug ([#8727](https://togithub.com/facebook/jest/pull/8727)) ##### Chore & Maintenance - `[*]` [**BREAKING**] TypeScript definitions requires a minimum of TypeScript v3.8 ([#9823](https://togithub.com/facebook/jest/pull/9823)) - `[*]` [**BREAKING**] Drop support for Node 8 ([#9423](https://togithub.com/facebook/jest/pull/9423)) - `[*]` Upgrade to chalk@4 ([#9752](https://togithub.com/facebook/jest/pull/9752)) - `[*]` Remove usage of `realpath-native` ([#9952](https://togithub.com/facebook/jest/pull/9952)) - `[docs]` Fix example reference implementation to use Jest with Phabricator ([#8662](https://togithub.com/facebook/jest/pull/8662)) - `[docs]` Added default compiler to tranform ([#8583](https://togithub.com/facebook/jest/pull/8583)) - `[docs]` Updated Testing Frameworks guide with React; make it generic ([#9106](https://togithub.com/facebook/jest/pull/9106)) - `[expect, jest-mock, pretty-format]` [**BREAKING**] Remove `build-es5` from package ([#9945](https://togithub.com/facebook/jest/pull/9945)) - `[@jest/fake-timers, @jest/environment]` [**BREAKING**] Rename `LolexFakeTimers` to `ModernFakeTimers` ([#9960](https://togithub.com/facebook/jest/pull/9960)) - `[jest-haste-map]` [**BREAKING**] removed `providesModuleNodeModules` ([#8535](https://togithub.com/facebook/jest/pull/8535)) - `[jest-runtime]` [**BREAKING**] Remove long-deprecated `require.requireActual` and `require.requireMock` methods ([#9854](https://togithub.com/facebook/jest/pull/9854)) ### [`v25.5.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2551) [Compare Source](https://togithub.com/facebook/jest/compare/v25.5.0...v25.5.1) ##### Fixes - `[jest-haste-map]` Add missing `@types/graceful-fs` dependency ([#9913](https://togithub.com/facebook/jest/pull/9913)) - `[jest-runner]` Correctly serialize `Set` passed to worker ([#9915](https://togithub.com/facebook/jest/pull/9915)) - `[jest-runtime]` Vary ESM cache by query ([#9914](https://togithub.com/facebook/jest/pull/9914)) ### [`v25.5.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2550) [Compare Source](https://togithub.com/facebook/jest/compare/v25.4.0...v25.5.0) ##### Features - `[@jest/globals]` New package so Jest's globals can be explicitly imported ([#9801](https://togithub.com/facebook/jest/pull/9801)) - `[jest-core]` Show coverage of sources related to tests in changed files ([#9769](https://togithub.com/facebook/jest/pull/9769)) - `[jest-runtime]` Populate `require.cache` ([#9841](https://togithub.com/facebook/jest/pull/9841)) ##### Fixes - `[*]` Use `graceful-fs` directly in every package instead of relying on `fs` being monkey patched ([#9443](https://togithub.com/facebook/jest/pull/9443)) - `[expect]` Prints the Symbol name into the error message with a custom asymmetric matcher ([#9888](https://togithub.com/facebook/jest/pull/9888)) - `[jest-circus, jest-jasmine2]` Support older version of `jest-runtime` ([#9903](https://togithub.com/facebook/jest/pull/9903) & [#9842](https://togithub.com/facebook/jest/pull/9842)) - `[@jest/environment]` Make sure not to reference Jest types ([#9875](https://togithub.com/facebook/jest/pull/9875)) - `[jest-message-util]` Code frame printing should respect `--noStackTrace` flag ([#9866](https://togithub.com/facebook/jest/pull/9866)) - `[jest-runtime]` Support importing CJS from ESM using `import` statements ([#9850](https://togithub.com/facebook/jest/pull/9850)) - `[jest-runtime]` Support importing parallel dynamic `import`s ([#9858](https://togithub.com/facebook/jest/pull/9858)) - `[jest-transform]` Improve source map handling when instrumenting transformed code ([#9811](https://togithub.com/facebook/jest/pull/9811)) ##### Chore & Maintenance - `[docs]` Add an example for mocking non-default export class ##### Performance - `[jest-resolve]` Update `resolve` to a version using native `realpath`, which is faster than the default JS implementation ([#9872](https://togithub.com/facebook/jest/pull/9872)) - `[jest-resolve]` Pass custom cached `realpath` function to `resolve` ([#9873](https://togithub.com/facebook/jest/pull/9873)) - `[jest-runtime]` Add `teardown` method to clear any caches when tests complete ([#9906](https://togithub.com/facebook/jest/pull/9906)) - `[jest-runtime]` Do not pass files required internally through transformation when loading them ([#9900](https://togithub.com/facebook/jest/pull/9900)) - `[jest-runtime]` Use `Map`s instead of object literals as cache holders ([#9901](https://togithub.com/facebook/jest/pull/9901)) ### [`v25.4.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2540) [Compare Source](https://togithub.com/facebook/jest/compare/v25.3.0...v25.4.0) - `[expect]` Support `async function`s in `toThrow` ([#9817](https://togithub.com/facebook/jest/pull/9817)) - `[jest-console]` Add code frame to `console.error` and `console.warn` ([#9741](https://togithub.com/facebook/jest/pull/9741)) - `[jest-runtime, jest-jasmine2, jest-circus]` Experimental, limited ECMAScript Modules support ([#9772](https://togithub.com/facebook/jest/pull/9772) & [#9842](https://togithub.com/facebook/jest/pull/9842)) ##### Fixes - `[expect]` Restore support for passing functions to `toHaveLength` matcher ([#9796](https://togithub.com/facebook/jest/pull/9796)) - `[jest-changed-files]` `--only-changed` should include staged files ([#9799](https://togithub.com/facebook/jest/pull/9799)) - `[jest-circus]` Throw on nested test definitions ([#9828](https://togithub.com/facebook/jest/pull/9828)) - `[jest-each]` `each` will throw an error when called with too many arguments ([#9818](https://togithub.com/facebook/jest/pull/9818)) - `[jest-runner]` Don't print warning to stdout when using `--json` ([#9843](https://togithub.com/facebook/jest/pull/9843)) ##### Chore & Maintenance - `[*]` Do not generate TypeScript declaration source maps ([#9822](https://togithub.com/facebook/jest/pull/9822)) - `[*]` Transpile code for Node 8.3, not 8.0 ([#9827](https://togithub.com/facebook/jest/pull/9827)) ### [`v25.3.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2530) [Compare Source](https://togithub.com/facebook/jest/compare/v25.2.6...v25.3.0) ##### Features - `[babel-jest]` Support passing `supportsDynamicImport` and `supportsStaticESM` ([#9766](https://togithub.com/facebook/jest/pull/9766)) - `[babel-preset-jest]` Enable all syntax plugins not enabled by default that works on current version of Node ([#9774](https://togithub.com/facebook/jest/pull/9774)) - `[jest-circus]` Enable writing async test event handlers ([#9397](https://togithub.com/facebook/jest/pull/9397)) - `[jest-runtime, @jest/transformer]` Support passing `supportsDynamicImport` and `supportsStaticESM` ([#9597](https://togithub.com/facebook/jest/pull/9597)) ##### Chore & Maintenance - `[*]` Replace `any`s with `unknown`s ([#9626](https://togithub.com/facebook/jest/pull/9626)) - `[@jest/transform]` Expose type `CacheKeyOptions` for `getCacheKey` ([#9762](https://togithub.com/facebook/jest/pull/9762)) - `[@jest/types]` Correct type `testRegex` for `ProjectConfig` ([#9780](https://togithub.com/facebook/jest/pull/9780)) ### [`v25.2.6`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2526) [Compare Source](https://togithub.com/facebook/jest/compare/v25.2.4...v25.2.6) ##### Chore & Maintenance - `[*]` 25.2.5 was published without changes from 25.2.4 - 25.2.6 includes all changes from that version. ### [`v25.2.4`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2524) [Compare Source](https://togithub.com/facebook/jest/compare/v25.2.3...v25.2.4) ##### Features - `[jest-message-util]` Check for common errors when using the wrong test environment ([#8245](https://togithub.com/facebook/jest/pull/8245)) ##### Fixes - `[jest-circus]` Fix type elision of jest-runtime imports ([#9717](https://togithub.com/facebook/jest/pull/9717)) - `[@jest/transform]` Fix coverage reporter for uncovered files without transformers, reverting [#9460](https://togithub.com/facebook/jest/pull/9460) ([#9724](https://togithub.com/facebook/jest/pull/9724)) ### [`v25.2.3`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2523) [Compare Source](https://togithub.com/facebook/jest/compare/v25.2.1...v25.2.3) ##### Fixes - `[*]` Verify all packages are properly downleveled for older versions of TypeScript ([#9715](https://togithub.com/facebook/jest/pull/9715)) ### [`v25.2.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2521) [Compare Source](https://togithub.com/facebook/jest/compare/v25.2.0...v25.2.1) ##### Fixes - `[*]` Downlevel TypeScript definitions files for compatibility with TS<3.8 ([#9705](https://togithub.com/facebook/jest/pull/9705)) ### [`v25.2.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2520) [Compare Source](https://togithub.com/facebook/jest/compare/v25.1.0...v25.2.0) ##### Features - `[jest-config]` Support ESM config files with `.js` extension ([#9573](https://togithub.com/facebook/jest/pull/9573)). - `[jest-runtime]` Override `module.createRequire` to return a Jest-compatible `require` function ([#9469](https://togithub.com/facebook/jest/pull/9469)) - `[jest-haste-map]` [**BREAKING**] Remove `mapper` option ([#9581](https://togithub.com/facebook/jest/pull/9581)) - `[*]` Support array of paths for `moduleNameMapper` aliases ([#9465](https://togithub.com/facebook/jest/pull/9465)) - `[jest-reporters]` Adds ability to pass options to the istanbul-reporter through `coverageReporters` ([#9572](https://togithub.com/facebook/jest/pull/9572)) - `[jest-runtime]` Require stack when a module cannot be resolved ([#9681](https://togithub.com/facebook/jest/pull/9681)) - `[jest-transform]` `writeCacheFile` no longer calls `fsync` ([#9695](https://togithub.com/facebook/jest/pull/9695)) ##### Fixes - `[expect]` Handle readonly properties correctly ([#9575](https://togithub.com/facebook/jest/pull/9575)) - `[jest-cli]` Set `coverageProvider` correctly when provided in config ([#9562](https://togithub.com/facebook/jest/pull/9562)) - `[jest-cli]` Allow specifying `.cjs` and `.mjs` config files by `--config` CLI option ([#9578](https://togithub.com/facebook/jest/pull/9578)) - `[jest-cli]` Update yargs to fix CLI flag overriding ([#9519](https://togithub.com/facebook/jest/pull/9519)) - `[jest-config]` Treat `setupFilesAfterEnv` like `setupFiles` when normalizing configs against presets ([#9495](https://togithub.com/facebook/jest/pull/9495)) - `[jest-config]` Support `.mjs` config files on Windows as well ([#9558](https://togithub.com/facebook/jest/pull/9558)) - `[jest-config]` Verify `rootDir` and all `roots` are directories ([#9569](https://togithub.com/facebook/jest/pull/9569)) - `[jest-config]` Ensure pattern of `replacePosixSep` is a string ([#9546](https://togithub.com/facebook/jest/pull/9546)) - `[jest-haste-map]` Fix crash on unix based systems without find ([#9579](https://togithub.com/facebook/jest/pull/9579)) - `[jest-jasmine2]` Fix `--testNamePattern` matching with `concurrent` tests ([#9090](https://togithub.com/facebook/jest/pull/9090)) - `[jest-matcher-utils]` Fix diff highlight of symbol-keyed object. ([#9499](https://togithub.com/facebook/jest/pull/9499)) - `[@jest/reporters]` Notifications should be fire&forget rather than having a timeout ([#9567](https://togithub.com/facebook/jest/pull/9567)) - `[jest-resolve]` Fix module identity preservation with symlinks and browser field resolution ([#9511](https://togithub.com/facebook/jest/pull/9511)) - `[jest-resolve]` Do not confuse directories with files ([#8912](https://togithub.com/facebook/jest/pull/8912)) - `[jest-resolve]` `moduleNameMapper` should take precedence over Node core modules ([#9563](https://togithub.com/facebook/jest/pull/9563)) - `[jest-runtime]` Reset `isolateModules` if it fails ([#9541](https://togithub.com/facebook/jest/pull/9541)) - `[jest-runtime]` Yarn PnP errors displayed to the user ([#9681](https://togithub.com/facebook/jest/pull/9681)) - `[jest-snapshot]` Downgrade semver to v6 to support node 8 ([#9451](https://togithub.com/facebook/jest/pull/9451)) - `[jest-snapshot]` Properly indent new snapshots in the presences of existing ones ([#9523](https://togithub.com/facebook/jest/pull/9523)) - `[jest-transform]` Correct sourcemap behavior for transformed and instrumented code ([#9460](https://togithub.com/facebook/jest/pull/9460)) - `[jest-transform]` Allow instrumentation of transformed files with weird file extensions ([#9589](https://togithub.com/facebook/jest/pull/9589)) - `[@jest/types]` Make `ConfigGlobals` an interface to allow for declaration merging. ([#9570](https://togithub.com/facebook/jest/pull/9570)) - `[pretty-format]` Export `OldPlugin` type ([#9491](https://togithub.com/facebook/jest/pull/9491)) ##### Chore & Maintenance - `[docs]` Warn about unexpected behavior / bug of node-notifier when using the `notify` options. - `[docs]` Grammatical corrections to Async docs page. ([#9679](https://togithub.com/facebook/jest/pull/9679)) - `[jest-resolver]` Use `resolve` package to implement custom module resolution ([#9520](https://togithub.com/facebook/jest/pull/9520)) - `[jest-runtime]` Move execution of `setupFiles` to `jest-runner` ([#9596](https://togithub.com/facebook/jest/pull/9596)) - `[jest-runtime]` Update anchor link in `helpers` ([#9616](https://togithub.com/facebook/jest/pull/9616)) - `[@jest/reporters]` Remove unused dependencies and type exports ([#9462](https://togithub.com/facebook/jest/pull/9462)) - `[website]` Update pictures of reports when matchers fail ([#9214](https://togithub.com/facebook/jest/pull/9214)) ##### Performance - `[jest-haste-map]` Reduce number of `lstat` calls in node crawler ([#9514](https://togithub.com/facebook/jest/pull/9514)) ### [`v25.1.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2510) [Compare Source](https://togithub.com/facebook/jest/compare/ff9269be05fd8316e95232198fce3463bf2f270e...v25.1.0) ##### Features - `[babel-plugin-jest-hoist]` Show codeframe on static hoisting issues ([#8865](https://togithub.com/facebook/jest/pull/8865)) - `[babel-plugin-jest-hoist]` Add `BigInt` to `ALLOWED_IDENTIFIERS` ([#8382](https://togithub.com/facebook/jest/pull/8382)) - `[babel-preset-jest]` Add `@babel/plugin-syntax-bigint` ([#8382](https://togithub.com/facebook/jest/pull/8382)) - `[expect]` Add `BigInt` support to `toBeGreaterThan`, `toBeGreaterThanOrEqual`, `toBeLessThan` and `toBeLessThanOrEqual` ([#8382](https://togithub.com/facebook/jest/pull/8382)) - `[expect, jest-matcher-utils]` Display change counts in annotation lines ([#9035](https://togithub.com/facebook/jest/pull/9035)) - `[expect, jest-snapshot]` Support custom inline snapshot matchers ([#9278](https://togithub.com/facebook/jest/pull/9278)) - `[jest-config]` Throw the full error message and stack when a Jest preset is missing a dependency ([#8924](https://togithub.com/facebook/jest/pull/8924)) - `[jest-config]` [**BREAKING**] Set default display name color based on runner ([#8689](https://togithub.com/facebook/jest/pull/8689)) - `[jest-config]` Merge preset globals with project globals ([#9027](https://togithub.com/facebook/jest/pull/9027)) - `[jest-config]` Support `.cjs` config files ([#9291](https://togithub.com/facebook/jest/pull/9291)) - `[jest-config]` [**BREAKING**] Support `.mjs` config files ([#9431](https://togithub.com/facebook/jest/pull/9431)) - `[jest-core]` Support reporters as default exports ([#9161](https://togithub.com/facebook/jest/pull/9161)) - `[jest-core]` Support `--findRelatedTests` paths case insensitivity on Windows ([#8900](https://togithub.com/facebook/jest/issues/8900)) - `[jest-diff]` Add options for colors and symbols ([#8841](https://togithub.com/facebook/jest/pull/8841)) - `[jest-diff]` [**BREAKING**] Export as ECMAScript module ([#8873](https://togithub.com/facebook/jest/pull/8873)) - `[jest-diff]` Add `includeChangeCounts` and rename `Indicator` options ([#8881](https://togithub.com/facebook/jest/pull/8881)) - `[jest-diff]` Add `changeColor` and `patchColor` options ([#8911](https://togithub.com/facebook/jest/pull/8911)) - `[jest-diff]` Add `trailingSpaceFormatter` option and replace cyan with `commonColor` ([#8927](https://togithub.com/facebook/jest/pull/8927)) - `[jest-diff]` Add `firstOrLastEmptyLineReplacement` option and export 3 `diffLines` functions ([#8955](https://togithub.com/facebook/jest/pull/8955)) - `[jest-environment]` Add optional `getVmContext` next to `runScript` ([#9252](https://togithub.com/facebook/jest/pull/9252) & [#9428](https://togithub.com/facebook/jest/pull/9428)) - `[jest-environment-jsdom]` Add `fakeTimersLolex` ([#8925](https://togithub.com/facebook/jest/pull/8925)) - `[jest-environment-node]` Add `fakeTimersLolex` ([#8925](https://togithub.com/facebook/jest/pull/8925)) - `[jest-environment-node]` Add `queueMicrotask` ([#9140](https://togithub.com/facebook/jest/pull/9140)) - `[jest-environment-node]` Implement `getVmContext` ([#9252](https://togithub.com/facebook/jest/pull/9252) & [#9428](https://togithub.com/facebook/jest/pull/9428)) - `[@jest/fake-timers]` Add Lolex as implementation of fake timers ([#8897](https://togithub.com/facebook/jest/pull/8897)) - `[jest-get-type]` Add `BigInt` support. ([#8382](https://togithub.com/facebook/jest/pull/8382)) - `[jest-matcher-utils]` Add `BigInt` support to `ensureNumbers` `ensureActualIsNumber`, `ensureExpectedIsNumber` ([#8382](https://togithub.com/facebook/jest/pull/8382)) - `[jest-matcher-utils]` Ignore highlighting matched asymmetricMatcher in diffs ([#9257](https://togithub.com/facebook/jest/pull/9257)) - `[jest-reporters]` Export utils for path formatting ([#9162](https://togithub.com/facebook/jest/pull/9162)) - `[jest-reporters]` Provides global coverage thresholds as watermarks for istanbul ([#9416](https://togithub.com/facebook/jest/pull/9416)) - `[jest-runner]` Warn if a worker had to be force exited ([#8206](https://togithub.com/facebook/jest/pull/8206)) - `[jest-runtime]` [**BREAKING**] Do not export `ScriptTransformer` - it can be imported from `@jest/transform` instead ([#9256](https://togithub.com/facebook/jest/pull/9256)) - `[jest-runtime]` Use `JestEnvironment.getVmContext` and `vm.compileFunction` if available to avoid the module wrapper ([#9252](https://togithub.com/facebook/jest/pull/9252) & [#9428](https://togithub.com/facebook/jest/pull/9428)) - `[jest-snapshot]` Display change counts in annotation lines ([#8982](https://togithub.com/facebook/jest/pull/8982)) - `[jest-snapshot]` [**BREAKING**] Improve report when the matcher has properties ([#9104](https://togithub.com/facebook/jest/pull/9104)) - `[jest-snapshot]` Improve colors when snapshots are updatable ([#9132](https://togithub.com/facebook/jest/pull/9132)) - `[jest-snapshot]` Ignore indentation for most serialized objects ([#9203](https://togithub.com/facebook/jest/pull/9203)) - `[jest-transform]` Create `createTranspilingRequire` function for easy transpiling modules ([#9194](https://togithub.com/facebook/jest/pull/9194)) - `[jest-transform]` [**BREAKING**] Return transformed code as a string, do not wrap in `vm.Script` ([#9253](https://togithub.com/facebook/jest/pull/9253)) - `[@jest/test-result]` Create method to create empty `TestResult` ([#8867](https://togithub.com/facebook/jest/pull/8867)) - `[jest-worker]` [**BREAKING**] Return a promise from `end()`, resolving with the information whether workers exited gracefully ([#8206](https://togithub.com/facebook/jest/pull/8206)) - `[jest-reporters]` Transform file paths into hyperlinks ([#8980](https://togithub.com/facebook/jest/pull/8980)) ##### Fixes - `[expect]` Display `expectedDiff` more carefully in `toBeCloseTo` ([#8389](https://togithub.com/facebook/jest/pull/8389)) - `[expect]` Avoid incorrect difference for subset when `toMatchObject` fails ([#9005](https://togithub.com/facebook/jest/pull/9005)) - `[expect]` Consider all RegExp flags for equality ([#9167](https://togithub.com/facebook/jest/pull/9167)) - `[expect]` [**BREAKING**] Consider primitives different from wrappers instantiated with `new` ([#9167](https://togithub.com/facebook/jest/pull/9167)) - `[expect]` Prevent maintaining RegExp state between multiple tests ([#9289](https://togithub.com/facebook/jest/pull/9289)) - `[expect]` Fix subsetEquality false circular reference detection ([#9322](https://togithub.com/facebook/jest/pull/9322)) - `[jest-config]` Use half of the available cores when `watchAll` mode is enabled ([#9117](https://togithub.com/facebook/jest/pull/9117)) - `[jest-config]` Fix Jest multi project runner still cannot handle exactly one project ([#8894](https://togithub.com/facebook/jest/pull/8894)) - `[jest-console]` Add missing `console.group` calls to `NullConsole` ([#9024](https://togithub.com/facebook/jest/pull/9024)) - `[jest-core]` Don't include unref'd timers in --detectOpenHandles results ([#8941](https://togithub.com/facebook/jest/pull/8941)) - `[jest-core]` Limit number of workers when creating haste maps in projects ([#9259](https://togithub.com/facebook/jest/pull/9259)) - `[jest-diff]` Do not inverse format if line consists of one change ([#8903](https://togithub.com/facebook/jest/pull/8903)) - `[jest-diff]` Rename some new options and change their default values ([#9077](https://togithub.com/facebook/jest/pull/9077)) - `[jest-environment-node]` Fix `TextEncoder.encode` not referencing same global `Uint8Array` constructor ([#9261](https://togithub.com/facebook/jest/pull/9261)) - `[jest-fake-timers]` `getTimerCount` will not include cancelled immediates ([#8764](https://togithub.com/facebook/jest/pull/8764)) - `[jest-fake-timers]` Support `util.promisify` on `setTimeout` ([#9180](https://togithub.com/facebook/jest/pull/9180)) - `[jest-jasmine2, jest-circus]` Improve error message format for Node's assert.fail ([#9262](https://togithub.com/facebook/jest/pull/9262)) - `[jest-leak-detector]` [**BREAKING**] Use `weak-napi` instead of `weak` package ([#8686](https://togithub.com/facebook/jest/pull/8686)) - `[jest-mock]` Fix for mockReturnValue overriding mockImplementationOnce ([#8398](https://togithub.com/facebook/jest/pull/8398)) - `[jest-reporters]` Make node-notifier an optional dependency ([#8918](https://togithub.com/facebook/jest/pull/8918)) - `[jest-reporters]` Make all arguments to methods on `BaseReporter` optional ([#9159](https://togithub.com/facebook/jest/pull/9159)) - `[jest-resolve]`: Set MODULE_NOT_FOUND as error code when module is not resolved from paths ([#8487](https://togithub.com/facebook/jest/pull/8487)) - `[jest-resolve-dependencies]` Handle dynamic dependencies correctly even when using module maps ([#9303](https://togithub.com/facebook/jest/pull/9303)) - `[jest-snapshot]` Remove only the added newlines in multiline snapshots ([#8859](https://togithub.com/facebook/jest/pull/8859)) - `[jest-snapshot]` Distinguish empty string from external snapshot not written ([#8880](https://togithub.com/facebook/jest/pull/8880)) - `[jest-snapshot]` [**BREAKING**] Distinguish empty string from internal snapshot not written ([#8898](https://togithub.com/facebook/jest/pull/8898)) - `[jest-snapshot]` [**BREAKING**] Remove `report` method and throw matcher errors ([#9049](https://togithub.com/facebook/jest/pull/9049)) - `[jest-snapshot]` Omit irrelevant `received` properties when property matchers fail ([#9198](https://togithub.com/facebook/jest/pull/9198)) - `[jest-transform]` Properly cache transformed files across tests ([#8890](https://togithub.com/facebook/jest/pull/8890)) - `[jest-transform]` Don't fail the test suite when a generated source map is invalid ([#9058](https://togithub.com/facebook/jest/pull/9058)) - `[jest-types]` [**BREAKING**] Use less `null | undefined` in config types ([#9200](https://togithub.com/facebook/jest/pull/9200)) - `[jest-util]` Allow querying process.domain ([#9136](https://togithub.com/facebook/jest/pull/9136)) - `[pretty-format]` Correctly detect memoized elements ([#9196](https://togithub.com/facebook/jest/pull/9196)) - `[pretty-format]` Fix pretty-format to respect displayName on forwardRef ([#9422](https://togithub.com/facebook/jest/pull/9422)) ##### Chore & Maintenance - `[*]` [**BREAKING**] Drop support for Node 6 ([#8455](https://togithub.com/facebook/jest/pull/8455)) - `[*]` Add Node 12 to CI ([#8411](https://togithub.com/facebook/jest/pull/8411)) - `[*]` [**BREAKING**] Upgrade to Micromatch v4 ([#8852](https://togithub.com/facebook/jest/pull/8852)) - `[babel-plugin-jest-hoist]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874)) - `[docs]` Add alias and optional boolean value to `coverage` CLI Reference ([#8996](https://togithub.com/facebook/jest/pull/8996)) - `[docs]` Fix broken link pointing to legacy JS file in "Snapshot Testing". - `[docs]` Add `setupFilesAfterEnv` and `jest.setTimeout` example ([#8971](https://togithub.com/facebook/jest/pull/8971)) - `[expect]` Test that `toStrictEqual` is equivalent to Node's `assert.deepStrictEqual` ([#9167](https://togithub.com/facebook/jest/pull/9167)) - `[jest]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874)) - `[jest-cli]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874)) - `[jest-cli]` [**BREAKING**] Remove re-exports from `@jest/core` ([#8874](https://togithub.com/facebook/jest/pull/8874)) - `[jest-diff]` Remove the need to export `splitLines0` function ([#9151](https://togithub.com/facebook/jest/pull/9151)) - `[jest-environment-jsdom]` [**BREAKING**] Upgrade JSDOM from v11 to v15 ([#8851](https://togithub.com/facebook/jest/pull/8851)) - `[jest-haste-map]` Upgrade to `fsevents@2` ([#9215](https://togithub.com/facebook/jest/pull/9215)) - `[jest-reporters]` [**BREAKING**] Upgrade Istanbul dependencies, which are used for code coverage ([#9192](https://togithub.com/facebook/jest/pull/9192)) - `[jest-util]` [**BREAKING**] Remove deprecated exports ([#8863](https://togithub.com/facebook/jest/pull/8863)) - `[jest-validate]` [**BREAKING**] Use ESM exports ([#8874](https://togithub.com/facebook/jest/pull/8874)) - `[jest-types]` Mark `InitialOptions` as `Partial` ([#8848](https://togithub.com/facebook/jest/pull/8848)) - `[jest-config]` Refactor `normalize` to be more type safe ([#8848](https://togithub.com/facebook/jest/pull/8848)) ### [`v25.0.0`](https://togithub.com/facebook/jest/compare/v24.9.0...ff9269be05fd8316e95232198fce3463bf2f270e) [Compare Source](https://togithub.com/facebook/jest/compare/v24.9.0...ff9269be05fd8316e95232198fce3463bf2f270e) ### [`v24.9.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2490) [Compare Source](https://togithub.com/facebook/jest/compare/v24.8.0...v24.9.0) ##### Features - `[expect]` Highlight substring differences when matcher fails, part 1 ([#8448](https://togithub.com/facebook/jest/pull/8448)) - `[expect]` Highlight substring differences when matcher fails, part 2 ([#8528](https://togithub.com/facebook/jest/pull/8528)) - `[expect]` Improve report when mock-spy matcher fails, part 1 ([#8640](https://togithub.com/facebook/jest/pull/8640)) - `[expect]` Improve report when mock-spy matcher fails, part 2 ([#8649](https://togithub.com/facebook/jest/pull/8649)) - `[expect]` Improve report when mock-spy matcher fails, part 3 ([#8697](https://togithub.com/facebook/jest/pull/8697)) - `[expect]` Improve report when mock-spy matcher fails, part 4 ([#8710](https://togithub.com/facebook/jest/pull/8710)) - `[expect]` Throw matcher error when received cannot be jasmine spy ([#8747](https://togithub.com/facebook/jest/pull/8747)) - `[expect]` Improve report when negative CalledWith assertion fails ([#8755](https://togithub.com/facebook/jest/pull/8755)) - `[expect]` Improve report when positive CalledWith assertion fails ([#8771](https://togithub.com/facebook/jest/pull/8771)) - `[expect]` Display equal values for ReturnedWith similar to CalledWith ([#8791](https://togithub.com/facebook/jest/pull/8791)) - `[expect, jest-snapshot]` Change color from green for some args in matcher hints ([#8812](https://togithub.com/facebook/jest/pull/8812)) - `[jest-snapshot]` Highlight substring differences when matcher fails, part 3 ([#8569](https://togithub.com/facebook/jest/pull/8569)) - `[jest-core]` Improve report when snapshots are obsolete ([#8448](https://togithub.com/facebook/jest/pull/8665)) - `[jest-cli]` Improve chai support (with detailed output, to match jest exceptions) ([#8454](https://togithub.com/facebook/jest/pull/8454)) - `[*]` Manage the global timeout with `--testTimeout` command line argument. ([#8456](https://togithub.com/facebook/jest/pull/8456)) - `[pretty-format]` Render custom displayName of memoized components ([#8546](https://togithub.com/facebook/jest/pull/8546)) - `[jest-validate]` Allow `maxWorkers` as part of the `jest.config.js` ([#8565](https://togithub.com/facebook/jest/pull/8565)) - `[jest-runtime]` Allow passing configuration objects to transformers ([#7288](https://togithub.com/facebook/jest/pull/7288)) - `[@jest/core, @jest/test-sequencer]` Support async sort in custom `testSequencer` ([#8642](https://togithub.com/facebook/jest/pull/8642)) - `[jest-runtime, @jest/fake-timers]` Add `jest.advanceTimersToNextTimer` ([#8713](https://togithub.com/facebook/jest/pull/8713)) - `[@jest-transform]` Extract transforming require logic within `jest-core` into `@jest-transform` ([#8756](https://togithub.com/facebook/jest/pull/8756)) - `[jest-matcher-utils]` Add color options to `matcherHint` ([#8795](https://togithub.com/facebook/jest/pull/8795)) - `[jest-circus/jest-jasmine2]` Give clearer output for Node assert errors ([#8792](https://togithub.com/facebook/jest/pull/8792)) - `[jest-runner]` Export all types in the type signature of `jest-runner` ([#8825](https://togithub.com/facebook/jest/pull/8825)) ##### Fixes - `[jest-cli]` Detect side-effect only imports when running `--onlyChanged` or `--changedSince` ([#8670](https://togithub.com/facebook/jest/pull/8670)) - `[jest-cli]` Allow `--maxWorkers` to work with % input again ([#8565](https://togithub.com/facebook/jest/pull/8565)) - `[babel-plugin-jest-hoist]` Expand list of whitelisted globals in global mocks ([#8429](https://togithub.com/facebook/jest/pull/8429)) - `[jest-core]` Make watch plugin initialization errors look nice ([#8422](https://togithub.com/facebook/jest/pull/8422)) - `[jest-snapshot]` Prevent inline snapshots from drifting when inline snapshots are updated ([#8492](https://togithub.com/facebook/jest/pull/8492)) - `[jest-haste-map]` Don't throw on missing mapper in Node crawler ([#8558](https://togithub.com/facebook/jest/pull/8558)) - `[jest-core]` Fix incorrect `passWithNoTests` warning ([#8595](https://togithub.com/facebook/jest/pull/8595)) - `[jest-snapshots]` Fix test retries that contain snapshots ([#8629](https://togithub.com/facebook/jest/pull/8629)) - `[jest-mock]` Fix incorrect assignments when restoring mocks in instances where they originally didn't exist ([#8631](https://togithub.com/facebook/jest/pull/8631)) - `[expect]` Fix stack overflow when matching objects with circular references ([#8687](https://togithub.com/facebook/jest/pull/8687)) - `[jest-haste-map]` Workaround a node >=12.5.0 bug that causes the process not to exit after tests have completed and cancerous memory growth ([#8787](https://togithub.com/facebook/jest/pull/8787)) ##### Chore & Maintenance - `[docs]` Replace FlowType with TypeScript in CONTRIBUTING.MD code conventions - `[jest-leak-detector]` remove code repeat ([#8438](https://togithub.com/facebook/jest/pull/8438)) - `[docs]` Add example to `jest.requireActual` ([#8482](https://togithub.com/facebook/jest/pull/8482)) - `[docs]` Add example to `jest.mock` for mocking ES6 modules with the `factory` parameter ([#8550](https://togithub.com/facebook/jest/pull/8550)) - `[docs]` Add information about using `jest.doMock` with ES6 imports ([#8573](https://togithub.com/facebook/jest/pull/8573)) - `[docs]` Fix variable name in custom-matcher-api code example ([#8582](https://togithub.com/facebook/jest/pull/8582)) - `[docs]` Fix example used in custom environment docs ([#8617](https://togithub.com/facebook/jest/pull/8617)) - `[docs]` Updated react tutorial to refer to new package of react-testing-library ([@testing-library/react](https://togithub.com/testing-library/react)) ([#8753](https://togithub.com/facebook/jest/pull/8753)) - `[docs]` Updated imports of react-testing-library to [@testing-library/react](https://togithub.com/testing-library/react) in website ([#8757](https://togithub.com/facebook/jest/pull/8757)) - `[jest-core]` Add `getVersion` (moved from `jest-cli`) ([#8706](https://togithub.com/facebook/jest/pull/8706)) - `[docs]` Fix MockFunctions example that was using toContain instead of toContainEqual ([#8765](https://togithub.com/facebook/jest/pull/8765)) - `[*]` Make sure copyright header comment includes license ([#8783](https://togithub.com/facebook/jest/pull/8783)) - `[*]` Check copyright and license as one joined substring ([#8815](https://togithub.com/facebook/jest/pull/8815)) - `[docs]` Fix WatchPlugins `jestHooks.shouldRunTestSuite` example that receives an object ([#8784](https://togithub.com/facebook/jest/pull/8784)) - `[*]` Enforce LF line endings ([#8809](https://togithub.com/facebook/jest/pull/8809)) - `[pretty-format]` Delete obsolete link and simplify structure in README ([#8824](https://togithub.com/facebook/jest/pull/8824)) - `[docs]` Fix broken transform link on webpack page ([#9155](https://togithub.com/facebook/jest/pull/9155)) ##### Performance - `[jest-watcher]` Minor optimization for JestHook ([#8746](https://togithub.com/facebook/jest/pull/8746)) - `[@jest/reporters]` Prevent runaway CPU useage with `--notify` on macOS ([#8830](https://togithub.com/facebook/jest/issues/8830)) ### [`v24.8.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2480) [Compare Source](https://togithub.com/facebook/jest/compare/v24.7.1...v24.8.0) ##### Features - `[jest-circus]` Bind to Circus events via an optional event handler on any custom env ([#8344](https://togithub.com/facebook/jest/pull/8344)) - `[expect]` Improve report when matcher fails, part 15 ([#8281](https://togithub.com/facebook/jest/pull/8281)) - `[jest-cli]` Update `--forceExit` and "did not exit for one second" message colors ([#8329](https://togithub.com/facebook/jest/pull/8329)) - `[expect]` Improve report when matcher fails, part 16 ([#8306](https://togithub.com/facebook/jest/pull/8306)) - `[jest-runner]` Pass docblock pragmas to TestEnvironment constructor ([#8320](https://togithub.com/facebook/jest/pull/8320)) - `[docs]` Add DynamoDB guide ([#8319](https://togithub.com/facebook/jest/pull/8319)) - `[expect]` Improve report when matcher fails, part 17 ([#8349](https://togithub.com/facebook/jest/pull/8349)) - `[expect]` Improve report when matcher fails, part 18 ([#8356](https://togithub.com/facebook/jest/pull/8356)) - `[expect]` Improve report when matcher fails, part 19 ([#8367](https://togithub.com/facebook/jest/pull/8367)) ##### Fixes - `[jest-each]` Fix bug with placeholder values ([#8289](https://togithub.com/facebook/jest/pull/8289)) - `[jest-snapshot]` Inline snapshots: do not indent empty lines ([#8277](https://togithub.com/facebook/jest/pull/8277)) - `[@jest/runtime, @jest/transform]` Allow custom transforms for JSON dependencies ([#8278](https://togithub.com/facebook/jest/pull/8278)) - `[jest-core]` Make `detectOpenHandles` imply `runInBand` ([#8283](https://togithub.com/facebook/jest/pull/8283)) - `[jest-haste-map]` Fix the `mapper` option which was incorrectly ignored ([#8299](https://togithub.com/facebook/jest/pull/8299)) - `[jest-jasmine2]` Fix describe return value warning being shown if the describe function throws ([#8335](https://togithub.com/facebook/jest/pull/8335)) - `[jest-environment-jsdom]` Re-declare global prototype of JSDOMEnvironment ([#8352](https://togithub.com/facebook/jest/pull/8352)) - `[jest-snapshot]` Handle arrays when merging snapshots ([#7089](https://togithub.com/facebook/jest/pull/7089)) - `[expect]` Extract names of async and generator functions ([#8362](https://togithub.com/facebook/jest/pull/8362)) - `[jest-runtime]` Fix virtual mocks not being unmockable after previously being mocked ([#8396](https://togithub.com/facebook/jest/pull/8396)) - `[jest-transform]` Replace special characters in transform cache filenames to support Windows ([#8353](https://togithub.com/facebook/jest/pull/8353)) - `[jest-config]` Allow exactly one project ([#7498](https://togithub.com/facebook/jest/pull/7498)) ##### Chore & Maintenance - `[expect]` Fix label and add opposite assertion for toEqual tests ([#8288](https://togithub.com/facebook/jest/pull/8288)) - `[docs]` Mention Jest MongoDB Preset ([#8318](https://togithub.com/facebook/jest/pull/8318)) - `[@jest/reporters]` Migrate away from `istanbul-api` ([#8294](https://togithub.com/facebook/jest/pull/8294)) - `[*]` Delete obsolete emails tag from header comment in test files ([#8377](https://togithub.com/facebook/jest/pull/8377)) - `[expect]` optimize compare nodes ([#8368](https://togithub.com/facebook/jest/pull/8368)) - `[docs]` Fix typo in MockFunctionAPI.md ([#8406](https://togithub.com/facebook/jest/pull/8406)) - `[LICENSE]` Follow copyright header guidelines and delete For Jest software ([#8428](https://togithub.com/facebook/jest/pull/8428)) ##### Performance - `[jest-runtime]` Fix module registry memory leak ([#8282](https://togithub.com/facebook/jest/pull/8282)) - `[jest-resolve]` optimize resolve module path ([#8388](https://togithub.com/facebook/jest/pull/8388)) - `[jest-resolve]` cache current directory ([#8412](https://togithub.com/facebook/jest/pull/8412)) - `[jest-get-type]` Simplify checking for primitive ([#8416](https://togithub.com/facebook/jest/pull/8416)) ### [`v24.7.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2471) [Compare Source](https://togithub.com/facebook/jest/compare/v24.7.0...v24.7.1) ##### Fixes - `[@jest/config]` Normalize `testSequencer` to its absolute path ([#8267](https://togithub.com/facebook/jest/pull/8267)) - `[@jest/console]` Print to stderr when calling `console.error`, `console.warn` or `console.assert` using the `jest-runtime` CLI ([#8261](https://togithub.com/facebook/jest/pull/8261)) ### [`v24.7.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2470) [Compare Source](https://togithub.com/facebook/jest/compare/v24.6.0...v24.7.0) ##### Features - `[@jest/core, @jest/test-sequencer]` Move `testSequencer` to individual package `@jest/test-sequencer` ([#8223](https://togithub.com/facebook/jest/pull/8223)) - `[@jest/core, jest-cli, jest-config]` Add option `testSequencer` allow user use custom sequencer. ([#8223](https://togithub.com/facebook/jest/pull/8223)) ##### Fixes - `[expect]` Add negative equality tests for iterables ([#8260](https://togithub.com/facebook/jest/pull/8260)) - `[jest-haste-map]` Resolve fs watcher EMFILE error ([#8258](https://togithub.com/facebook/jest/pull/8258)) ##### Chore & Maintenance - `[expect]` Remove repetition of matcherName and options in matchers ([#8224](https://togithub.com/facebook/jest/pull/8224)) ##### Performance ### [`v24.6.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2460) [Compare Source](https://togithub.com/facebook/jest/compare/v24.5.0...v24.6.0) ##### Features - `[expect]`: Improve report when matcher fails, part 13 ([#8077](https://togithub.com/facebook/jest/pull/8077)) - `[@jest/core]` Filter API pre-filter setup hook ([#8142](https://togithub.com/facebook/jest/pull/8142)) - `[jest-snapshot]` Improve report when matcher fails, part 14 ([#8132](https://togithub.com/facebook/jest/pull/8132)) - `[@jest/reporter]` Display todo and skip test descriptions when verbose is true ([#8038](https://togithub.com/facebook/jest/pull/8038)) - `[jest-runner]` Support default exports for test environments ([#8163](https://togithub.com/facebook/jest/pull/8163)) - `[pretty-format]` Support React.Suspense ([#8180](https://togithub.com/facebook/jest/pull/8180)) - `[jest-snapshot]` Indent inline snapshots ([#8198](https://togithub.com/facebook/jest/pull/8198)) - `[jest-config]` Support colors in `displayName` configuration ([#8025](https://togithub.com/facebook/jest/pull/8025)) ##### Fixes - `[jest-circus]` Fix test retries with beforeAll/beforeEach failures ([#8227](https://togithub.com/facebook/jest/pull/8227)) - `[expect]` Fix circular references in iterable equality ([#8160](https://togithub.com/facebook/jest/pull/8160)) - `[jest-changed-files]` Change method of obtaining git root ([#8052](https://togithub.com/facebook/jest/pull/8052)) - `[jest-each]` Fix test function type ([#8145](https://togithub.com/facebook/jest/pull/8145)) - `[jest-fake-timers]` `getTimerCount` not taking immediates and ticks into account ([#8139](https://togithub.com/facebook/jest/pull/8139)) - `[jest-runtime]` Allow json file as manual mock ([#8159](https://togithub.com/facebook/jest/pull/8159)) - `[pretty-format]` Print `BigInt` as a readable number instead of `{}` ([#8138](https://togithub.com/facebook/jest/pull/8138)) - `[jest-core]` Fix ability to transform dependencies required from globalSetup script ([#8143](https://togithub.com/facebook/jest/pull/8143)) - `[@jest/reporters]` Fix Cannot read property converageData of null ([#8168](https://togithub.com/facebook/jest/pull/8168)) - `[jest-worker]` `JEST_WORKER_ID` starts at 1 ([#8205](https://togithub.com/facebook/jest/pull/8205)) - `[jest-config]` Use default cwd even if config contains a cwd property ([#7923](https://togithub.com/facebook/jest/pull/7923)) - `[jest-resolve-dependencies]`: Remove internal peer dependencies ([#8215](https://togithub.com/facebook/jest/pull/8215)) - `[jest-resolve]`: Remove internal peer dependencies ([#8215](https://togithub.com/facebook/jest/pull/8215)) - `[jest-snapshot]`: Remove internal peer dependencies ([#8215](https://togithub.com/facebook/jest/pull/8215)) - `[jest-resolve]` Fix requireActual with moduleNameMapper ([#8210](https://togithub.com/facebook/jest/pull/8210)) - `[jest-haste-map]` Fix haste map duplicate detection in watch mode ([#8237](https://togithub.com/facebook/jest/pull/8237)) ##### Chore & Maintenance - `[*]` Remove flow from code base ([#8061](https://togithub.com/facebook/jest/pull/8061)) - `[*]` Use property initializer syntax in Jest codebase ([#8117](https://togithub.com/facebook/jest/pull/8117)) - `[*]` Move [@types/node](https://togithub.com/types/node) to the root package.json ([#8129](https://togithub.com/facebook/jest/pull/8129)) - `[*]` Add documentation and tests related to auto-mocking ([#8099](https://togithub.com/facebook/jest/pull/8099)) - `[*]` Add `jest-watch-typeahead` as a devDependency ([#6449](https://togithub.com/facebook/jest/pull/6449)) - `[*]` upgrade TS to 3.4.0-dev\* for incremental builds ([#8149](https://togithub.com/facebook/jest/pull/8149)) - `[docs]` Improve description of optional arguments in ExpectAPI.md ([#8126](https://togithub.com/facebook/jest/pull/8126)) ##### Performance - `[jest-haste-map]` Optimize haste map data structure for serialization/deserialization ([#8171](https://togithub.com/facebook/jest/pull/8171)) - `[jest-haste-map]` Avoid persisting haste map or processing files when not changed ([#8153](https://togithub.com/facebook/jest/pull/8153)) - `[jest-core]` Improve performance of SearchSource.findMatchingTests by 15% ([#8184](https://togithub.com/facebook/jest/pull/8184)) - `[jest-resolve]` Optimize internal cache lookup performance ([#8183](https://togithub.com/facebook/jest/pull/8183)) - `[jest-core]` Dramatically improve watch mode performance ([#8201](https://togithub.com/facebook/jest/pull/8201)) - `[jest-transform]` Cache regular expression instead of creating anew for every file in ScriptTransformer ([#8235](https://togithub.com/facebook/jest/pull/8235)) - `[jest-core]` Fix memory leak of source map info and minor performance improvements ([#8234](https://togithub.com/facebook/jest/pull/8234)) - `[jest-console]` Fix memory leak by releasing console output reference when printed to stdout ([#8233](https://togithub.com/facebook/jest/pull/8233)) - `[jest-runtime]` Use `Map` instead of `Object` for module registry ([#8232](https://togithub.com/facebook/jest/pull/8232)) ### [`v24.5.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2450) [Compare Source](https://togithub.com/facebook/jest/compare/v24.4.0...v24.5.0) ##### Features - `[jest-haste-map]` Expose `throwOnModuleCollision` via `config.haste` ([#8113](https://togithub.com/facebook/jest/pull/8113)) ##### Chore & Maintenance - `[expect]` Export `Matchers` interface from `expect` ([#8093](https://togithub.com/facebook/jest/pull/8093)) ### [`v24.4.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2440) [Compare Source](https://togithub.com/facebook/jest/compare/v24.3.1...v24.4.0) ##### Features - `[jest-resolve]` Now supports PnP environment without plugins ([#8094](https://togithub.com/facebook/jest/pull/8094)) ##### Fixes - `[expect]` Compare DOM nodes even if there are multiple Node classes ([#8064](https://togithub.com/facebook/jest/pull/8064)) - `[jest-worker]` `worker.getStdout()` can return `null` ([#8083](https://togithub.com/facebook/jest/pull/8083)) - `[jest-worker]` Re-attach stdout and stderr from new processes/threads created after retries ([#8087](https://togithub.com/facebook/jest/pull/8087)) - `[jest-reporters/jest-runner]` Serialize `changedFiles` passed to workers ([#8090](https://togithub.com/facebook/jest/pull/8090)) ##### Chore & Maintenance - `[*]` Make sure to include `d.ts` files in the tarball when building ([#8086](https://togithub.com/facebook/jest/pull/8086)) ### [`v24.3.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2431) [Compare Source](https://togithub.com/facebook/jest/compare/v24.3.0...v24.3.1) ##### Fixes - `[jest-cli]` export functions compatible with `import {default}` ([#8080]Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:ghost: Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by WhiteSource Renovate. View repository job log here.