Change8

Migrating to Jest v30.4.1

Version v30.4.1 introduces 1 breaking change. This guide details how to update your code.

Released: 5/8/2026

1
Breaking Changes
1
Migration Steps
6
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

jest-configjest-corejest-runnerjest-schemasjest-typesjest-runtime

Breaking Changes

Issue #1

CJS-from-ESM default export behavior in `jest-runtime` has changed to align with Node. Previously, Jest unwrapped `__esModule`, but now `module.exports` is always the ESM default export, meaning code relying on the old unwrapping behavior might break.

Migration Steps

  1. 1
    If you rely on CJS-from-ESM default exports in `jest-runtime`, be aware that Jest no longer automatically unwraps `__esModule`. Adjust code that imports ESM modules as CommonJS if it expected the default export to be the value of `default`.

Release Summary

Jest v30.4.1 introduces support for tuple-formatted custom runner configurations and aligns the CJS-from-ESM default export behavior in jest-runtime with Node standards, which may require adjustments for consumers of ESM modules.

Need More Details?

View the full release notes and all changes for Jest v30.4.1.

View Full Changelog