NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #936 most downloaded on npm
Module for verifying whether an object has been garbage collected or not.
Last release 17 days ago
01 Sep 2026
Release timing varies
gaps range from 8 days to 6 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
184 releases · first in 2017
[jest-resolve] Support directory remapping in package.json exports
[jest-resolve] Support directory remapping in package.json exports (#12373)Full Changelog: https://github.com/facebook/jest/compare/v28.0.0-alpha.2..v28.0.0-alpha.3
[@jest/expect] New module which extends expect with jest-snapshot matchers (#12404, #12410)
[@jest/expect] New module which extends expect with jest-snapshot matchers (#12404, #12410)[jest-resolve, jest-runtime] Add support for data: URI import and mock (#12392)[pretty-format] New maxWidth parameter (#12402)[jest-matcher-utils] Pass maxWidth to pretty-format to avoid printing every element in arrays by default (#12402)[expect] [BREAKING] Snapshot matcher types are moved to @jest/expect (#12404)Full Changelog: https://github.com/facebook/jest/compare/v28.0.0-alpha.1...v28.0.0-alpha.2
One column per quarter.
[jest-serializer] [BREAKING] Deprecate package in favour of using v8 APIs directly
[babel-jest] Export createTransformer function (#12399)[expect] Expose AsymmetricMatchers, MatcherFunction and MatcherFunctionWithState interfaces (#12363, #12376)[jest-config, @jest/types] Add ci to GlobalConfig (#12378)[@jest/schemas] New module for JSON schemas for Jest's config (#12384)[jest-config] Correctly detect CI environment and update snapshots accordingly (#12378)[jest-config] Pass moduleTypes to ts-node to enforce CJS when transpiling (#12397)[docs, examples] Update React examples to match with the new React guidelines for code examples (#12217)[docs] Add note about not mixing done() with Promises (#11077)[jest-serializer] [BREAKING] Deprecate package in favour of using v8 APIs directly (#12391)Full Changelog: https://github.com/facebook/jest/compare/v28.0.0-alpha.0...v28.0.0-alpha.1
[jest-config] [BREAKING] Stop shipping jest-environment-jsdom by default
[jest-config] [BREAKING] Stop shipping jest-environment-jsdom by default (#12354)[jest-config] [BREAKING] Stop shipping jest-jasmine2 by default (#12355)[jest-environment-jsdom] [BREAKING] Upgrade jsdom to 19.0.0 (#12290)[jest-environment-jsdom] [BREAKING] Add default browser condition to exportConditions for jsdom environment (#11924)[jest-environment-node] [BREAKING] Add default node and node-addon conditions to exportConditions for node environment (#11924)[@jest/expect-utils] New module exporting utils for expect (#12323)[jest-resolve] [BREAKING] Add support for package.json exports (#11961)[jest-worker] [BREAKING] Allow only absolute workerPath (#12343)[expect] Move typings of .not, .rejects and .resolves modifiers outside of Matchers interface (#12346)[jest-environment-jsdom] Make jsdom accessible to extending environments again (#12232)[jest-jasmine2, jest-types] [BREAKING] Move all jasmine specific types from @jest/types to its own package (#12125)[*] [BREAKING] Drop support for Node v10 and v15 and target first LTS 16.13.0 (#12220)[*] [BREAKING] Drop support for typescript@3.8, minimum version is now 4.2 (#11142)[*] Bundle all .d.ts files into a single index.d.ts per module (#12345)[expect] [BREAKING] Remove support for importing build/utils (#12323)[expect] [BREAKING] Migrate to ESM (#12344)[jest-cli] Update yargs to v17 (#12357)[jest-config] [BREAKING] Remove getTestEnvironment export (#12353)[@jest/core] Use index.ts instead of jest.ts as main export (#12329)[jest-environment-jsdom] [BREAKING] Migrate to ESM (#12340)[jest-environment-node] [BREAKING] Migrate to ESM (#12340)[@jest/fake-timers] Update @sinonjs/fake_timers to v9 (#12357)[jest-jasmine2, jest-runtime] [BREAKING] Use Symbol to pass jest.setTimeout value instead of jasmine specific logic (#12124)[jest-phabricator] [BREAKING] Migrate to ESM (#12341)[jest-resolve] [BREAKING] Make requireResolveFunction argument mandatory (#12353)[jest-runner] [BREAKING] Remove some type exports from @jest/test-result (#12353)[jest-snapshot] [BREAKING] Migrate to ESM (#12342)[jest-transform] Update write-file-atomic to v4 (#12357)[jest] Use index.ts instead of jest.ts as main export (#12329)[jest-haste-map] [BREAKING] Default to node crawler over shelling out to find if watchman is not enabled (#12320)Full Changelog: https://github.com/facebook/jest/compare/v27.5.1...v28.0.0-alpha.0
[jest-config] Support comments in JSON config file
[jest-config] Support comments in JSON config file (#12316)[pretty-format] Expose ConvertAnsi plugin (#12308)[expect] Add type definitions for asymmetric closeTo matcher (#12304)[jest-cli] Load binary via exported API (#12315)[jest-config] Replace jsonlint with parse-json (#12316)[jest-repl] Make module importable (#12311 & #12315)[*] Avoid anonymous default exports (#12313)Full Changelog: https://github.com/facebook/jest/compare/v27.5.0...v27.5.1
[expect] Add asymmetric matcher expect.closeTo
[expect] Add asymmetric matcher expect.closeTo (#12243)[jest-mock] Added mockFn.mock.lastCall to retrieve last argument (#12285)[expect] Add a fix for .toHaveProperty('') (#12251)[jest-each, @jest/globals] Allow passing ReadonlyArray type of a table to describe.each and test.each (#12297)[@jest/globals] Add missing options argument to jest.doMock typing (#12292)[jest-environment-node] Add atob and btoa (#12269)[jest-matcher-utils] Correct diff for expected asymmetric matchers (#12264)[jest-message-util] Fix .getTopFrame() (and toMatchInlineSnapshot()) with mjs files (#12277)[*] Update graceful-fs to ^4.2.9 (#11749)[jest-resolve] perf: skip error creation on not found stat calls (#11749)Full Changelog: https://github.com/facebook/jest/compare/v27.4.7...v27.5.0
[jest-environment-node] Add AbortSignal
[jest-environment-node] Add AbortSignal (#12157)[jest-environment-node] Add Missing node global performance (#12002)[jest-runtime] Handle missing mocked property (#12213)[@jest/transform] Update dependency package pirates to 4.0.4 (#12002)jest-config perf: only register ts-node once when loading TS config files (#12160)Full Changelog: https://github.com/facebook/jest/compare/v27.4.5...v27.4.6
[jest-worker] Add additional execArgv to filter
[jest-worker] Add additional execArgv to filter (#12103)Full Changelog: https://github.com/facebook/jest/compare/v27.4.1...v27.4.2
[jest-worker] Filter execArgv correctly
[jest-worker] Filter execArgv correctly (#12097)Full Changelog: https://github.com/facebook/jest/compare/v27.4.0...v27.4.1
[expect] Enhancing the toHaveProperty matcher to support array selection
[expect] Enhancing the toHaveProperty matcher to support array selection (#12092)[jest-core] Add support for testResultsProcessor written in ESM (#12006)[jest-diff, pretty-format] Add compareKeys option for custom sorting of object keys (#11992)[jest-mock] Add ts-jest mock util functions (#12089)[expect] Allow again expect.Matchers generic with single value (#11986)[jest-circus, jest-jasmine2] Avoid false concurrent test failures due to unhandled promise rejections (#11987)[jest-config] Add missing slash dependency to package.json (#12080)[jest-core] Incorrect detection of open ZLIB handles (#12022)[jest-diff] Break dependency cycle (#10818)[jest-environment-jsdom] Add @types/jsdom dependency (#11999)[jest-environment-jsdom] Do not reset the global.document too early on teardown (#11871)[jest-transform] Improve error and warning messages (#11998)[jest-worker] Pass execArgv correctly to worker_threads worker (#12069)[docs] CLI options alphabetized (#11586)[jest-runner] Add info regarding timers to forcedExit message(#12083)[*] Replaced substr method with substring (#12066)[*] Add types entry to all export maps (#12073)Full Changelog: https://github.com/facebook/jest/compare/v27.3.1...v27.4.0
[expect] Make expect extension properties configurable
[expect] Make expect extension properties configurable (#11978)[expect] Fix .any() checks on primitive wrapper classes (#11976)[expect] BigInt global is always defined, don't check for its existence at runtime (#11979)[jest-config, jest-util] Use ci-info instead of is-ci to detect CI environment (#11973)Full Changelog: https://github.com/facebook/jest/compare/v27.3.0...v27.3.1
[jest-config] Add testEnvironmentOptions.html to apply to jsdom input
[jest-config] Add testEnvironmentOptions.html to apply to jsdom input (#11950)[jest-resolver] Support default export (.) in exports field if main is missing (#11919)[expect] Tweak and improve types (#11949)[jest-runtime] Ensure absolute paths can be resolved within test modules (#11943)[jest-runtime] Fix instanceof for ModernFakeTimers and LegacyFakeTimers methods (#11946)Full Changelog: https://github.com/facebook/jest/compare/v27.2.5...v27.3.0
[@jest/types] Mark deprecated configuration options as @deprecated
[jest-config] Warn when multiple Jest configs are located (#11922)[expect] Pass matcher context to asymmetric matchers (#11926 & #11930)[expect] Improve TypeScript types (#11931)[expect] Improve typings of toThrow() and toThrowError() matchers (#11929)[jest-cli] Improve --help printout by removing defunct --browser option (#11914)[jest-haste-map] Use distinct cache paths for different values of computeDependencies (#11916)[@jest/reporters] Do not buffer console.logs when using verbose reporter (#11054)[expect] Export default matchers (#11932)[@jest/types] Mark deprecated configuration options as @deprecated (#11913)Full Changelog: https://github.com/facebook/jest/compare/v27.2.4...v27.2.5
[expect] Add equality checks for Array Buffers in expect.ToStrictEqual()
[@jest/fake-timers] Update @sinonjs/fake-timers to v8
[jest-runtime] Correct wrapperLength value for ESM modules.
[jest-runtime] Correct wrapperLength value for ESM modules. (#11893)[jest-resolver, jest-runtime] Pass conditions to custom resolvers to enable them to implement support for package.json exports field
[jest-runtime] Add experimental, limited (and undocumented) support for mocking ECMAScript Modules
[jest-haste-map] Use watchman suffix-set option for faster file indexing.
[jest-haste-map] Use watchman suffix-set option for faster file indexing. (#11784)[jest-cli] Adds a new config options snapshotFormat which offers a way to override any of the formatting settings which come with pretty-format. (#11654)[jest-reporters] Expose the getSummary util (#11695).[jest-resolver] Support node: prefix when importing Node core modules (#11331)[jest-each] Relaxed the validation to allow multibyte characters in headings (#11575)[jest-environment-jsdom] Add support for userAgent option (#11773)[jest-environment-node] Add Event and EventTarget to node global environment. (#11727)[jest-mock] Fix spyOn to use Object.prototype.hasOwnProperty (#11721)[jest-resolver] Add dependency on jest-haste-map (#11759)[jest-types] Compat with @types/node v16 (#11645)[docs] Correct expects.assertions documentation by adding async/await for asynchronous function.[*] Publish all modules to include the build change in #11569
[*] Publish all modules to include the build change in #11569[jest-circus] Add some APIs to make it easier to build your own test runner
[jest-circus] Add some APIs to make it easier to build your own test runner[jest-reporters] Expose the getResultHeader util (#11460)[jest-resolver] Export resolve* utils for different Jest modules (#11466)[@jest/test-result] Export Test, TestEvents and TestFileEvent (#11466)[jest-circus] Add missing slash dependency (#11465)[jest-circus, @jest/test-sequencer] Remove dependency on jest-runner (#11466)[jest-config] Resolve config.runner to absolute path (#11465)[jest-config] Make sure to support functions as config (#11475)[jest-core] Do not warn about DNSCHANNEL handles when using the --detectOpenHandles option (#11470)[jest-runner] Remove dependency on jest-config (#11466)[jest-worker] Loosen engine requirement to >= 10.13.0 (#11451)[jest-environment-jsdom] Bump version of JSDOM to avoid deprecated request package
[jest-environment-jsdom] Bump version of JSDOM to avoid deprecated request package (#11442)[jest-runtime] [BREAKING] remove long-deprecated jest.addMatchers, jest.resetModuleRegistry, and jest.runTimersToTime
[babel-jest] Add async transformation (#11192)[jest-changed-files] Use '--' to separate paths from revisions (#11160)[jest-circus] [BREAKING] Fail tests when multiple done() calls are made (#10624)[jest-circus, jest-jasmine2] [BREAKING] Fail the test instead of just warning when describe returns a value (#10947)[jest-config] [BREAKING] Default to Node testing environment instead of browser (JSDOM) (#9874)[jest-config] [BREAKING] Use jest-circus as default test runner (#10686)[jest-config] Add support for preset written in ESM (#11200)[jest-config, jest-runtime] Support ESM for files other than .js and .mjs (#10823)[jest-config, jest-runtime] [BREAKING] Use "modern" implementation as default for fake timers (#10874 & #11197)[jest-config Allow passing forceNodeFilesystemAPI through to jest-haste-map (#11264)[jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types] [BREAKING] Add custom HasteMap class implementation config option (#11107)[jest-core] make TestWatcher extend emittery (#10324)[jest-core] Run failed tests interactively the same way we do with snapshots (#10858)[jest-core] more TestSequencer methods can be async (#10980)[jest-core] Add support for testSequencer written in ESM (#11207)[jest-core] Add support for globalSetup and globalTeardown written in ESM (#11267)[jest-core] Add support for watchPlugins written in ESM (#11315)[jest-core] Add support for runner written in ESM (#11232)[jest-core] Add support for reporters written in ESM (#11427)[jest-each] Add support for interpolation with object properties (#11388)[jest-environment-node] Add AbortController to globals (#11182)[@jest/fake-timers] Update to @sinonjs/fake-timers to v7 (#11198)[jest-haste-map] Handle injected scm clocks (#10966)[jest-haste-map] Add enableSymlinks configuration option to follow symlinks for test files (#9351)[jest-repl, jest-runner] [BREAKING] Run transforms over environment (#8751)[jest-repl] Add support for testEnvironment written in ESM (#11232)[jest-runner] [BREAKING] set exit code to 1 if test logs after teardown (#10728)[jest-runner] [BREAKING] Run transforms over runnner (#8823)[jest-runner] [BREAKING] Run transforms over testRunnner (#8823)[jest-runner] Possibility to use ESM for test environment (11033)[jest-runner] Add support for testRunner written in ESM (#11232)[jest-runtime] Detect reexports from CJS as named exports in ESM (#10988)[jest-runtime] Support for async code transformations (#11191 & #11220)[jest-reporters] Add static filepath property to all reporters (#11015)[jest-snapshot] [BREAKING] Make prettier optional for inline snapshots - fall back to string replacement (#7792 & #11192)[jest-snapshot] [BREAKING] Run transforms over snapshotResolver (#8751)[jest-transform] Pass config options defined in Jest's config to transformer's process and getCacheKey functions (#10926)[jest-transform] Add support for transformers written in ESM (#11163)[jest-transform] [BREAKING] Do not export ScriptTransformer class, instead export the async function createScriptTransformer (#11163)[jest-transform] Async code transformations (#9889)[jest-transform] Support transpiled transformers (#11193)[jest-transform] [BREAKING] requireAndTranspileModule always return a Promise, and the third parameter type is changed to RequireAndTranspileModuleOptions which accept applyInteropRequireDefault option (#11232)[jest-transform] [BREAKING] createTranspilingRequire return function which return a Promise now (#11232)[jest-util] add requireOrImportModule for importing CJS or ESM (#11199)[jest-util] add applyInteropRequireDefault option on requireOrImportModule (#11232)[jest-watcher] Added support for clearing the line when <C-u> is pressed in a watch mode pattern prompt (#11358)[jest-worker] Add support for custom task queues and adds a PriorityQueue implementation. (#10921)[jest-worker] Add in-order scheduling policy to jest worker (10902)[pretty-format] Better print for sparse arrays (11326)[pretty-print] Add option printBasicPrototype which determines whether or not the prototype should be printed for raw objects or arrays (#11441)[babel-plugin-jest-hoist] Add __dirname and __filename to whitelisted globals (#10903)[expect] [BREAKING] Revise expect.not.objectContaining() to be the inverse of expect.objectContaining(), as documented. (#10708)[expect] [BREAKING] Make toContain more strict with the received type (#10119 & #10929)[expect] [BREAKING] matcherResult on JestAssertionError are now strings rather than functions (#10989)[jest-circus] Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped describe block #10451[jest-circus] Fix testLocation on Windows when using test.each (#10871)[jest-cli] Use testFailureExitCode when bailing from a failed test (#10958)[jest-cli] Print custom error if error thrown from global hooks is not an error already (#11003)[jest-cli] Allow running multiple "projects" from programmatic API (#11307)[jest-cli] Fix missing collectCoverage after init (#11353)[jest-cli, jest-config, jest-types] Move all default values into jest-config (#9924)[jest-config] [BREAKING] Change default file extension order by moving json behind ts and tsx (10572)[jest-console] console.dir now respects the second argument correctly (#10638)[jest-core] Don't report PerformanceObserver as open handle (#11123)[jest-core] Use WeakRef to hold timers when detecting open handles (#11277)[jest-core] Correctly detect open handles that were created in test functions using done callbacks (#11382)[jest-core] Do not collect RANDOMBYTESREQUEST as open handles (#11278)[jest-core] Wait briefly for open handles to close before flagging them when using --detectOpenHandles (#11429)[jest-diff] [BREAKING] Use only named exports (#11371)[jest-each] [BREAKING] Ignore excess words in headings (#8766)[jest-each] Support array index with template strings (#10763)[jest-each] Interpolate %% correctly (#11364)[jest-each] Fix wrong interpolation when the value of array contains multiple % (#11364)[jest-environment] [BREAKING] Drop support for runScript for test environments (#11155)[jest-environment-jsdom] Use inner realm’s ArrayBuffer constructor (#10885)[jest-environment-jsdom] [BREAKING] Remove Node globals setImmediate and clearImmediate #11222[jest-get-type] [BREAKING] Convert to ES Module (#11359)[jest-globals] [BREAKING] Disallow return values other than a Promise from hooks and tests (#10512)[jest-globals] [BREAKING] Disallow mixing a done callback and returning a Promise from hooks and tests (#10512)[jest-haste-map] Vendor NodeWatcher from sane (#10919)[jest-jasmine2] Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped describe block when it has child tests marked as either only or todo #10451[jest-jasmine2] Fixed the issues of child tests marked with only or todo getting executed even if it is inside a skipped parent describe block #10451[jest-jasmine2] Wrap all test functions so they open handles that were created in test functions using done callbacks can be detected (#11382)[jest-reporter] Handle empty files when reporting code coverage with V8 (#10819)[jest-resolve] Replace read-pkg-up with escalade package (#10781)[jest-resolve] Disable jest-pnp-resolver for Yarn 2 (#10847)[jest-runtime] [BREAKING] Do not inject global variable into module wrapper (#10644)[jest-runtime] [BREAKING] remove long-deprecated jest.addMatchers, jest.resetModuleRegistry, and jest.runTimersToTime (#9853)[jest-runtime] Fix stack overflow and promise deadlock when importing mutual dependant ES module (#10892)[jest-runtime] Prevent global module registry from leaking into isolateModules registry (#10963)[jest-runtime] Refactor to prevent race condition when linking and evaluating ES Modules (#11150)[jest-runtime] Throw correct error when attempting to load ESM via require (#11260)[jest-runtime] Do not cache modules that throw during evaluation (#11263)[jest-transform] Show enhanced SyntaxError message for all SyntaxErrors (#10749)[jest-transform] [BREAKING] Refactor API to pass an options bag around rather than multiple boolean options (#10753)[jest-transform] [BREAKING] Refactor API of transformers to pass an options bag rather than separate config and other options (#10834)[jest-types] Fix Config.ts projects types (#11285)[jest-util] Replace micromatch with picomatch to fix issues with negated globs (#11287)[jest-validate] Use en-US locale to avoid case conversion problems while validating CLI options on machines with some certain locales(e.g. Turkish) set as default locale. (#11412)[jest-worker] [BREAKING] Use named exports (#10623)[jest-worker] Do not swallow errors during serialization (#10984)[jest-worker] Handle ERR_IPC_CHANNEL_CLOSED errors properly (#11143)[pretty-format] [BREAKING] Convert to ES Modules (#10515)[pretty-format] Only call hasAttribute if it's a function (#11000)[pretty-format] Handle jsdom attributes properly (#11189)[pretty-format] Import pretty-format using named imports (#11360)[*] [BREAKING] Only support Node LTS releases and Node 15 (#10685)[*] [BREAKING] Add exports field to all package.jsons (#9921)[*] Make it easier for Jest's packages to use the VM escape hatch (#10824)[*] [BREAKING] Remove deprecated mapCoverage (#9968)[babel-jest] [BREAKING] Migrate to ESM (#11193)[docs] Correct example using browser-resolve (#11140)[docs] Clarify timers configuration property (#11376)[jest, jest-core] [BREAKING] Replace TestScheduler export with createTestScheduler (#11427)[jest-config] [BREAKING] Remove enabledTestsMap config, use filter instead (#10787)[jest-console] [BREAKING] Move root into config and take GlobalConfig as mandatory parameter for getConsoleOutput (#10126)[jest-console] Export LogEntry (#11017)[jest-fake-timers] Clarify global behavior of jest.useFakeTimers and jest.useRealTimers (#10867)[jest-haste-map] [BREAKING] Migrate to ESM (#10875)[jest-haste-map] [BREAKING] Remove support for deprecated option ignorePattern as function (#10348)[jest-jasmine2] [BREAKING] Migrate to ESM (#10906)[jest-jasmine2] [BREAKING] Remove unused options argument from Env constructor (#10240)[jest-repl, jest-runtime] [BREAKING] Move the jest-runtime CLI into jest-repl (#10016 & #10925)[jest-resolve] [BREAKING] Migrate to ESM (#10688)[jest-resolve-dependencies] [BREAKING] Migrate to ESM (#10876)[jest-mock] [BREAKING] Migrate to ESM (#10887)[jest-reporters] [BREAKING] Make node-notifier a peer dependency (#10977)[jest-resolve, jest-runtime] [BREAKING] Use Maps instead of objects for all cached resources (#10968)[jest-runner] [BREAKING] Migrate to ESM (#10900)[jest-runtime] [BREAKING] Remove deprecated and unused getSourceMapInfo from Runtime (#9969)[jest-transformer] [BREAKING] Remove unused isCoreModule option (#11166)[jest-util] No longer checking enumerable when adding process.domain (#10862)[jest-validate] [BREAKING] Remove recursiveBlacklist option in favor of previously introduced recursiveDenylist (#10650)[website] Replace 'Github' with 'GitHub' (#11279)[website] Remove a language code from the link to the Node.js website (#11282)[website] Remove a duplicated word (#11281)[website] Add french to website (#11361)[jest-resolve] Cache reading and parsing of package.jsons (#11076)[jest-runtime, jest-transform] share cacheFS between runtime and transformer (#10901)[jest-runtime] Load chalk only once per worker (#10864)[jest-worker] Fix memory leak of previous task arguments while no new task is scheduled (#11187)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[jest-core] Add findRelatedTests and nonFlagArgs in allowed config options for updateConfigAndRun in watch plugins
[jest-core] Add findRelatedTests and nonFlagArgs in allowed config options for updateConfigAndRun in watch plugins (#10659)[babel-plugin-jest-hoist] Preserve order of hoisted mock nodes within containing block (#10536)[babel-plugin-jest-hoist] Hoist pure constants to support experimental JSX transform in hoisted mocks (#10723)[babel-preset-jest] Update babel-preset-current-node-syntax to support top level await (#10747)[expect] Revert "Fix objectContaining to work recursively into sub-objects (#10508)" (#10766)[jest-circus, jest-jasmine2] fix: don't assume stack is always a string (#10697)[jest-config] Fix bug introduced in watch mode by PR #10678 (#10692)[jest-config] Throw correct error for missing preset modules (#10737)[jest-resolve-dependencies] Resolve mocks as dependencies (#10713)[jest-runtime] Handle file URLs in dynamic imports (#10744)[jest-runtime, babel-jest] Pass more ESM options to @jest/transform (#10752)[jest-runtime] Properly inject extraGlobals into the runtime (#10758)[jest-transform] Link to ESM docs on syntax errors (#10748)[jest-runtime] Support named exports from CommonJS as named ES Module imports
[jest-runtime] Support named exports from CommonJS as named ES Module imports (#10673)[jest-validate] Add support for recursiveDenylist option as an alternative to recursiveBlacklist (#10236)[expect] Fix objectContaining to work recursively into sub-objects (#10508)[jest-cli, jest-core, jest-config, jest-types] Fix --onlyFailures flag to work in non-watch mode (#10678)[jest-config] Fix for the jest.config.ts compiler to not interfere with tsconfig.json files (#10675)[jest-message-util] Update to work properly with Node 15 (#10660)[jest-mock] Allow to mock methods in getters (TypeScript 3.9 export) (#10156)[jest-cli, jest-config] Add support for the jest.config.ts configuration file
[jest-cli, jest-config] Add support for the jest.config.ts configuration file (#10564)[jest-config] Simplify transform RegExp (#10207)[jest-fake-timers] Lazily instantiate mock timers (#10551)[jest-runtime] require.main is no longer undefined when using jest.resetModules (#10626)[@jest/types] Add missing values for timers (#10632)[*] Revert usage of Escalade and rollback Yargs to v15 as it breaks Node 13
[*] Revert usage of Escalade and rollback Yargs to v15 as it breaks Node 13 (#10599)[jest-circus] Setup globals before emitting setup, and include Jest globals in the setup payload (#10598)[jest-mock] Fix typings for mockResolvedValue, mockResolvedValueOnce, mockRejectedValue and mockRejectedValueOnce (#10600)[jest-circus, jest-config, jest-runtime] Add new injectGlobals config and CLI option to disable injecting global variables into the runtime
[jest-circus, jest-config, jest-runtime] Add new injectGlobals config and CLI option to disable injecting global variables into the runtime (#10484)[jest-each] Fixes .each type to always be callable (#10447)[jest-runner] Add support for moduleLoaders with default exports (#10541)[@jest/create-cache-key-function] Added a new package for creating cache keys (#10587)[jest-circus, jest-jasmine2] Find correct location for test.each tests (#10413)[jest-console] Add Console constructor to console object (#10502)[jest-globals] Fix lifecycle hook function types (#10480)[jest-runtime] Remove usage of vm.compileFunction due to a performance issue (#10586)[expect] Fix toMatchObject to work with inherited class getters
[jest-resolve] Add support for packageFilter on custom resolver
[jest-circus, jest-jasmine2] Include failureDetails property in test results
[jest-core, jest-circus, jest-reporter, jest-runner] Added support for reporting individual test cases using jest-circus
[jest-core, jest-circus, jest-reporter, jest-runner] Added support for reporting individual test cases using jest-circus (#10227)[jest-config, jest-reporter, jest-runner, jest-test-sequencer] Add slowTestThreshold configuration option (#9366)[jest-haste-map] Watchman crawler now includes dotfiles (#10075)[jest-worker] Added support for workers to send custom messages to parent in jest-worker (#10293)[jest-worker] Support passing resourceLimits (#10335)[pretty-format] Added support for serializing custom elements (web components) (#10217)[expect] Match symbols and bigints in any() (#10223)[jest-changed-files] Use git diff instead of git log for --changedSince (#10155)[jest-console] Add missing console.timeLog for compatibility with Node (#10209)[jest-haste-map] Check find binary supports the -iname parameter (#10308)[jest-snapshot] Strip added indentation for inline error snapshots (#10217)[*] Add missing dependency on @types/node (#10248)[jest-jasmine2] Convert PCancelable to TypeScript (#10215)[jest-jasmine2] Refine typings of queueRunner (#10215)[jest-jasmine2] Remove usage of Function type (#10216)[jest-resolve] Improve types (#10239)[docs] Clarify the jest.requireActual(moduleName) example[jest-types] Refine typings of coverageReporters (#10275)[jest-mock] Export Mock, MockInstance, SpyInstance types
[jest-mock] Export Mock, MockInstance, SpyInstance types (#10138)[jest-config] Support config files exporting (async) functions (#10001)[jest-cli, jest-core] Add --selectProjects CLI argument to filter test suites by project name (#8612)[jest-cli, jest-init] Add coverageProvider to jest --init prompts (#10044)[jest-console] getConsoleOutput to receive global stack trace config and use it to format stack trace (#10081)[jest-jasmine2] Stop adding : after an error that has no message (#9990)[jest-diff] Control no diff message color with commonColor in diff options (#9997)[jest-snapshot] Fix TypeScript compilation (#10008)[docs] Correct confusing filename in enableAutomock example (#10055)[jest-core] 🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉 (#10000)[jest-core, jest-reporters, jest-test-result, jest-types] Cleanup displayName type (#10049)[jest-runtime] Jest-internal sandbox escape hatch (#9907)[jest-fake-timers] Update now param type to support Date in addition to number. (#10169)[docs] Add param to setSystemTime docs and remove preceding period from it and getRealSystemTime (#10169)[jest-snapshot, jest-util] Replace make-dir with fs.mkdir (#10136)[docs] Added parcel-bundler documentation inside readme.md file[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)[jest-circus] Backward compatibility for deprecated DescribeBlock.tests to not break e.g. Detox reporter
[jest-circus] Backward compatibility for deprecated DescribeBlock.tests to not break e.g. Detox reporterNothing published for this version
[jest-runtime] [BREAKING] Remove long-deprecated require.requireActual and require.requireMock methods
[jest-environment-jsdom] [BREAKING] Upgrade jsdom to v16 (#9606)[@jest/fake-timers] Add possibility to use a modern implementation of fake timers, backed by @sinonjs/fake-timers (#7776)[jest-runtime] Add createMockFromModule as an alias for genMockFromModule (#9962)[babel-jest] Handle null being passed to createTransformer (#9955)[jest-circus, jest-console, jest-jasmine2, jest-reporters, jest-util, pretty-format] Fix time durating formatting and consolidate time formatting code (#9765)[jest-circus] [BREAKING] Fail tests if a test takes a done callback and have return values (#9129)[jest-circus] [BREAKING] Throw a proper error if a test / hook is defined asynchronously (#8096)[jest-circus] Throw more descriptive error if hook is defined inside test (#9957)[jest-circus] [BREAKING] Align execution order of tests to match jasmine's top to bottom order (#9965)[jest-config, jest-resolve] [BREAKING] Remove support for browser field (#9943)[jest-haste-map] Stop reporting files as changed when they are only accessed (#7347)[jest-resolve] Show relative path from root dir for module not found errors (#9963)[jest-runtime] Fix absolute path moduleNameMapper + jest.mock bug (#8727)[*] [BREAKING] TypeScript definitions requires a minimum of TypeScript v3.8 (#9823)[*] [BREAKING] Drop support for Node 8 (#9423)[*] Upgrade to chalk@4 (#9752)[*] Remove usage of realpath-native (#9952)[docs] Fix example reference implementation to use Jest with Phabricator (#8662)[docs] Added default compiler to tranform (#8583)[docs] Updated Testing Frameworks guide with React; make it generic (#9106)[expect, jest-mock, pretty-format] [BREAKING] Remove build-es5 from package (#9945)[@jest/fake-timers, @jest/environment] [BREAKING] Rename LolexFakeTimers to ModernFakeTimers (#9960)[jest-haste-map] [BREAKING] removed providesModuleNodeModules (#8535)[jest-runtime] [BREAKING] Remove long-deprecated require.requireActual and require.requireMock methods (#9854)Nothing published for this version
Nothing published for this version
Nothing published for this version
[@jest/globals] New package so Jest's globals can be explicitly imported
[@jest/globals] New package so Jest's globals can be explicitly imported (#9801)[jest-core] Show coverage of sources related to tests in changed files (#9769)[jest-runtime] Populate require.cache (#9841)[*] Use graceful-fs directly in every package instead of relying on fs being monkey patched (#9443)[expect] Prints the Symbol name into the error message with a custom asymmetric matcher (#9888)[jest-circus, jest-jasmine2] Support older version of jest-runtime (#9903 & #9842)[@jest/environment] Make sure not to reference Jest types (#9875)[jest-message-util] Code frame printing should respect --noStackTrace flag (#9866)[jest-runtime] Support importing CJS from ESM using import statements (#9850)[jest-runtime] Support importing parallel dynamic imports (#9858)[jest-transform] Improve source map handling when instrumenting transformed code (#9811)[docs] Add an example for mocking non-default export class[jest-resolve] Update resolve to a version using native realpath, which is faster than the default JS implementation (#9872)[jest-resolve] Pass custom cached realpath function to resolve (#9873)[jest-runtime] Add teardown method to clear any caches when tests complete (#9906)[jest-runtime] Do not pass files required internally through transformation when loading them (#9900)[jest-runtime] Use Maps instead of object literals as cache holders (#9901)[expect] Support async functions in toThrow
[expect] Support async functions in toThrow (#9817)[jest-console] Add code frame to console.error and console.warn (#9741)[jest-runtime, jest-jasmine2, jest-circus] Experimental, limited ECMAScript Modules support (#9772 & #9842)[expect] Restore support for passing functions to toHaveLength matcher (#9796)[jest-changed-files] --only-changed should include staged files (#9799)[jest-circus] Throw on nested test definitions (#9828)[jest-each] each will throw an error when called with too many arguments (#9818)[jest-runner] Don't print warning to stdout when using --json (#9843)[babel-jest] Support passing supportsDynamicImport and supportsStaticESM
[babel-jest] Support passing supportsDynamicImport and supportsStaticESM (#9766)[babel-preset-jest] Enable all syntax plugins not enabled by default that works on current version of Node (#9774)[jest-circus] Enable writing async test event handlers (#9397)[jest-runtime, @jest/transformer] Support passing supportsDynamicImport and supportsStaticESM (#9597)[*] 25.2.5 was published without changes from 25.2.4 - 25.2.6 includes all changes from that version.
[*] 25.2.5 was published without changes from 25.2.4 - 25.2.6 includes all changes from that version.[*] Verify all packages are properly downleveled for older versions of TypeScript
[*] Verify all packages are properly downleveled for older versions of TypeScript (#9715)[*] Downlevel TypeScript definitions files for compatibility with TS<3.8
[*] Downlevel TypeScript definitions files for compatibility with TS<3.8 (#9705)Nothing published for this version
Nothing published for this version
[jest-config] Support ESM config files with .js extension (#9573).
[jest-config] Support ESM config files with .js extension (#9573).[jest-runtime] Override module.createRequire to return a Jest-compatible require function (#9469)[jest-haste-map] [BREAKING] Remove mapper option (#9581)[*] Support array of paths for moduleNameMapper aliases (#9465)[jest-reporters] Adds ability to pass options to the istanbul-reporter through coverageReporters (#9572)[jest-runtime] Require stack when a module cannot be resolved (#9681)[jest-transform] writeCacheFile no longer calls fsync (#9695)[expect] Handle readonly properties correctly (#9575)[jest-cli] Set coverageProvider correctly when provided in config (#9562)[jest-cli] Allow specifying .cjs and .mjs config files by --config CLI option (#9578)[jest-cli] Update yargs to fix CLI flag overriding (#9519)[jest-config] Treat setupFilesAfterEnv like setupFiles when normalizing configs against presets (#9495)[jest-config] Support .mjs config files on Windows as well (#9558)[jest-config] Verify rootDir and all roots are directories (#9569)[jest-config] Ensure pattern of replacePosixSep is a string (#9546)[jest-haste-map] Fix crash on unix based systems without find (#9579)[jest-jasmine2] Fix --testNamePattern matching with concurrent tests (#9090)[jest-matcher-utils] Fix diff highlight of symbol-keyed object. (#9499)[@jest/reporters] Notifications should be fire&forget rather than having a timeout (#9567)[jest-resolve] Fix module identity preservation with symlinks and browser field resolution (#9511)[jest-resolve] Do not confuse directories with files (#8912)[jest-resolve] moduleNameMapper should take precedence over Node core modules (#9563)[jest-runtime] Reset isolateModules if it fails (#9541)[jest-runtime] Yarn PnP errors displayed to the user (#9681)[jest-snapshot] Downgrade semver to v6 to support node 8 (#9451)[jest-snapshot] Properly indent new snapshots in the presences of existing ones (#9523)[jest-transform] Correct sourcemap behavior for transformed and instrumented code (#9460)[jest-transform] Allow instrumentation of transformed files with weird file extensions (#9589)[@jest/types] Make ConfigGlobals an interface to allow for declaration merging. (#9570)[pretty-format] Export OldPlugin type (#9491)[docs] Warn about unexpected behavior / bug of node-notifier when using the notify options.[docs] Grammatical corrections to Async docs page. (#9679)[jest-resolver] Use resolve package to implement custom module resolution (#9520)[jest-runtime] Move execution of setupFiles to jest-runner (#9596)[jest-runtime] Update anchor link in helpers (#9616)[@jest/reporters] Remove unused dependencies and type exports (#9462)[website] Update pictures of reports when matchers fail (#9214)[jest-haste-map] Reduce number of lstat calls in node crawler (#9514)Nothing published for this version
[jest-util] [BREAKING] Remove deprecated exports
[babel-plugin-jest-hoist] Show codeframe on static hoisting issues (#8865)[babel-plugin-jest-hoist] Add BigInt to ALLOWED_IDENTIFIERS (#8382)[babel-preset-jest] Add @babel/plugin-syntax-bigint (#8382)[expect] Add BigInt support to toBeGreaterThan, toBeGreaterThanOrEqual, toBeLessThan and toBeLessThanOrEqual (#8382)[expect, jest-matcher-utils] Display change counts in annotation lines (#9035)[expect, jest-snapshot] Support custom inline snapshot matchers (#9278)[jest-config] Throw the full error message and stack when a Jest preset is missing a dependency (#8924)[jest-config] [BREAKING] Set default display name color based on runner (#8689)[jest-config] Merge preset globals with project globals (#9027)[jest-config] Support .cjs config files (#9291)[jest-config] [BREAKING] Support .mjs config files (#9431)[jest-core] Support reporters as default exports (#9161)[jest-core] Support --findRelatedTests paths case insensitivity on Windows (#8900)[jest-diff] Add options for colors and symbols (#8841)[jest-diff] [BREAKING] Export as ECMAScript module (#8873)[jest-diff] Add includeChangeCounts and rename Indicator options (#8881)[jest-diff] Add changeColor and patchColor options (#8911)[jest-diff] Add trailingSpaceFormatter option and replace cyan with commonColor (#8927)[jest-diff] Add firstOrLastEmptyLineReplacement option and export 3 diffLines functions (#8955)[jest-environment] Add optional getVmContext next to runScript (#9252 & #9428)[jest-environment-jsdom] Add fakeTimersLolex (#8925)[jest-environment-node] Add fakeTimersLolex (#8925)[jest-environment-node] Add queueMicrotask (#9140)[jest-environment-node] Implement getVmContext (#9252 & #9428)[@jest/fake-timers] Add Lolex as implementation of fake timers (#8897)[jest-get-type] Add BigInt support. (#8382)[jest-matcher-utils] Add BigInt support to ensureNumbers ensureActualIsNumber, ensureExpectedIsNumber (#8382)[jest-matcher-utils] Ignore highlighting matched asymmetricMatcher in diffs (#9257)[jest-reporters] Export utils for path formatting (#9162)[jest-reporters] Provides global coverage thresholds as watermarks for istanbul (#9416)[jest-runner] Warn if a worker had to be force exited (#8206)[jest-runtime] [BREAKING] Do not export ScriptTransformer - it can be imported from @jest/transform instead (#9256)[jest-runtime] Use JestEnvironment.getVmContext and vm.compileFunction if available to avoid the module wrapper (#9252 & #9428)[jest-snapshot] Display change counts in annotation lines (#8982)[jest-snapshot] [BREAKING] Improve report when the matcher has properties (#9104)[jest-snapshot] Improve colors when snapshots are updatable (#9132)[jest-snapshot] Ignore indentation for most serialized objects (#9203)[jest-transform] Create createTranspilingRequire function for easy transpiling modules (#9194)[jest-transform] [BREAKING] Return transformed code as a string, do not wrap in vm.Script (#9253)[@jest/test-result] Create method to create empty TestResult (#8867)[jest-worker] [BREAKING] Return a promise from end(), resolving with the information whether workers exited gracefully (#8206)[jest-reporters] Transform file paths into hyperlinks (#8980)[expect] Display expectedDiff more carefully in toBeCloseTo (#8389)[expect] Avoid incorrect difference for subset when toMatchObject fails (#9005)[expect] Consider all RegExp flags for equality (#9167)[expect] [BREAKING] Consider primitives different from wrappers instantiated with new (#9167)[expect] Prevent maintaining RegExp state between multiple tests (#9289)[expect] Fix subsetEquality false circular reference detection (#9322)[jest-config] Use half of the available cores when watchAll mode is enabled (#9117)[jest-config] Fix Jest multi project runner still cannot handle exactly one project (#8894)[jest-console] Add missing console.group calls to NullConsole (#9024)[jest-core] Don't include unref'd timers in --detectOpenHandles results (#8941)[jest-core] Limit number of workers when creating haste maps in projects (#9259)[jest-diff] Do not inverse format if line consists of one change (#8903)[jest-diff] Rename some new options and change their default values (#9077)[jest-environment-node] Fix TextEncoder.encode not referencing same global Uint8Array constructor (#9261)[jest-fake-timers] getTimerCount will not include cancelled immediates (#8764)[jest-fake-timers] Support util.promisify on setTimeout (#9180)[jest-jasmine2, jest-circus] Improve error message format for Node's assert.fail (#9262)[jest-leak-detector] [BREAKING] Use weak-napi instead of weak package (#8686)[jest-mock] Fix for mockReturnValue overriding mockImplementationOnce (#8398)[jest-reporters] Make node-notifier an optional dependency (#8918)[jest-reporters] Make all arguments to methods on BaseReporter optional (#9159)[jest-resolve]: Set MODULE_NOT_FOUND as error code when module is not resolved from paths (#8487)[jest-resolve-dependencies] Handle dynamic dependencies correctly even when using module maps (#9303)[jest-snapshot] Remove only the added newlines in multiline snapshots (#8859)[jest-snapshot] Distinguish empty string from external snapshot not written (#8880)[jest-snapshot] [BREAKING] Distinguish empty string from internal snapshot not written (#8898)[jest-snapshot] [BREAKING] Remove report method and throw matcher errors (#9049)[jest-snapshot] Omit irrelevant received properties when property matchers fail (#9198)[jest-transform] Properly cache transformed files across tests (#8890)[jest-transform] Don't fail the test suite when a generated source map is invalid (#9058)[jest-types] [BREAKING] Use less null | undefined in config types (#9200)[jest-util] Allow querying process.domain (#9136)[pretty-format] Correctly detect memoized elements (#9196)[pretty-format] Fix pretty-format to respect displayName on forwardRef (#9422)[*] [BREAKING] Drop support for Node 6 (#8455)[*] Add Node 12 to CI (#8411)[*] [BREAKING] Upgrade to Micromatch v4 (#8852)[babel-plugin-jest-hoist] [BREAKING] Use ESM exports (#8874)[docs] Add alias and optional boolean value to coverage CLI Reference (#8996)[docs] Fix broken link pointing to legacy JS file in "Snapshot Testing".[docs] Add setupFilesAfterEnv and jest.setTimeout example (#8971)[expect] Test that toStrictEqual is equivalent to Node's assert.deepStrictEqual (#9167)[jest] [BREAKING] Use ESM exports (#8874)[jest-cli] [BREAKING] Use ESM exports (#8874)[jest-cli] [BREAKING] Remove re-exports from @jest/core (#8874)[jest-diff] Remove the need to export splitLines0 function (#9151)[jest-environment-jsdom] [BREAKING] Upgrade JSDOM from v11 to v15 (#8851)[jest-haste-map] Upgrade to fsevents@2 (#9215)[jest-reporters] [BREAKING] Upgrade Istanbul dependencies, which are used for code coverage (#9192)[jest-util] [BREAKING] Remove deprecated exports (#8863)[jest-validate] [BREAKING] Use ESM exports (#8874)[jest-types] Mark InitialOptions as Partial (#8848)[jest-config] Refactor normalize to be more type safe (#8848)Your coding agent can read these notes before it upgrades. Set up the MCP server →