Change8

v30.3.0

📦 jestView on GitHub →
3 features🐛 6 fixes🔧 7 symbols

Summary

This release introduces type-safe Jest configuration helpers and timer control options, alongside numerous bug fixes across configuration, mocking, reporting, and runtime modules.

Migration Steps

  1. Review V30 migration guide regarding `jest.mock()` behavior with case-sensitive paths.

✨ New Features

  • Add `defineConfig` and `mergeConfig` helpers for type-safe Jest config in `[jest-config]`.
  • Add `setTimerTickMode` in `[jest-fake-timers]` to configure how timers advance.
  • Reduce token usage when run through LLMs.

🐛 Bug Fixes

  • CLI coverage output is now kept when using `--json` with `--outputFile` in `[jest-config]`.
  • Use `Symbol` from the test environment in `[jest-mock]`.
  • Fixed issue where console output was not displayed for GHA reporter even with `silent: false` option in `[jest-reporters]`.
  • Fixed issue in `[jest-runtime]` where dynamic import could not be utilized despite specifying `--experimental-vm-modules` Node option.
  • Fixed issue in `[jest-test-sequencer]` where failed tests due to compilation errors were not re-executed even with `--onlyFailures` CLI option.
  • Ensure `process.features.require_module` is set to `false` in `[jest-util]`.

Affected Symbols