Features
[jest-config][BREAKING] Addmtsandctsto defaultmoduleFileExtensionsconfig (#14369)[jest-config][BREAKING] UpdatetestMatchandtestRegexdefault option for supportingmjs,cjs,mts, andcts(#14584)[@jest/core][BREAKING] Group together open handles with the same stack trace (#13417, & #14543)[@jest/core, @jest/test-sequencer][BREAKING] ExposesglobalConfig&contextstoTestSequencer(#14535, & #14543)[jest-environment-jsdom][BREAKING] Upgrade JSDOM to v22 (#13825)[@jest/fake-timers][BREAKING] Upgrade@sinonjs/fake-timersto v11 (#14544)[@jest/fake-timers]Exposing new modern timers functionadvanceTimersToFrame()which advances all timers by the needed milliseconds to execute callbacks currently scheduled withrequestAnimationFrame(#14598)[jest-runtime]Exposing new modern timers functionjest.advanceTimersToFrame()from@jest/fake-timers(#14598)[@jest/schemas]Upgrade@sinclair/typeboxto v0.31 (#14072)[@jest/types]test.each(): Accept a readonly (as const) table properly (#14565)[jest-snapshot][BREAKING] Add support for Error causes in snapshots (#13965)[jest-snapshot]Support Prettier 3 (#14566)[pretty-format][BREAKING] Do not render empty string children ('') in React plugin (#14470)
Fixes
[babel-plugin-jest-hoist]Usedenylistinstead of the deprecatedblacklistfor Babel 8 support (#14109)[expect]Check error instance type fortoThrow/toThrowError(#14576)[jest-circus][BREAKING] Prevent false test failures caused by promise rejections handled asynchronously (#14315)[jest-circus, jest-expect, jest-snapshot]Passtest.failingtests when containing failing snapshot matchers (#14313)[jest-config]Make sure to respectrunInBandoption (#14578)[@jest/expect-utils]Fix comparison ofDataView(#14408)[jest-leak-detector]Make leak-detector more aggressive when running GC (#14526)[jest-runtime]Properly handle re-exported native modules in ESM via CJS (#14589)[jest-util]Make sureisInteractiveworks in a browser (#14552)[pretty-format][BREAKING] PrintArrayBufferandDataViewcorrectly (#14290)[jest-cli]When specifying paths on the command line, only match against the relative paths of the test files (#12519)- [BREAKING] Changes
testPathPatternconfiguration option totestPathPatterns, which now takes a list of patterns instead of the regex. - [BREAKING]
--testPathPatternis now--testPathPatterns
- [BREAKING] Changes
[jest-reporters, jest-runner]Unhandled errors without stack get correctly logged to console (#14619)
Performance
Chore & Maintenance
[*][BREAKING] Drop support for Node.js versions 14 and 19 (#14460)[*][BREAKING] Drop support fortypescript@4.3, minimum version is now5.0(#14542)[*]Depend on exact versions of monorepo dependencies instead of^range (#14553)[*][BREAKING] Add ESM wrapper for all of Jest's modules (#14661)[babel-jest, babel-preset-jest][BREAKING] Increase peer dependency of@babel/coreto^7.11(#14109)[jest-cli, jest-config, @jest/types][BREAKING] Remove deprecated--initargument (#14490)[docs]Fix typos inCHANGELOG.mdandpackages/jest-validate/README.md(#14640)[docs]Don't use alias matchers in docs (#14631)
New Contributors
- @Eric-Tyrrell22 made their first contribution in #14535
- @Dunqing made their first contribution in #14290
- @maro1993 made their first contribution in #14175
- @mknight-atl made their first contribution in #14560
- @verycosy made their first contribution in #14576
- @Peeja made their first contribution in #14565
- @KhaledElmorsy made their first contribution in #14313
- @alexreardon made their first contribution in #14598
- @nolddor made their first contribution in #14611
- @Mutesa-Cedric made their first contribution in #14613
- @the-ress made their first contribution in #14619
- @shresthasurav made their first contribution in #14640
Full Changelog: v29.7.0...v30.0.0-alpha.1