jest v29.0.0 Release Notes

  • πŸ”‹ Features

    • πŸ’₯ [expect] [BREAKING] Differentiate between MatcherContext MatcherUtils and MatcherState types (#13141)
    • βœ… [jest-circus] Add support for test.failing.each (#13142)
    • πŸ’₯ [jest-config] [BREAKING] Make snapshotFormat default to escapeString: false and printBasicPrototype: false (#13036)
    • πŸ’₯ [jest-config] [BREAKING] Remove undocumented collectCoverageOnlyFrom option (#13156)
    • πŸ’₯ [jest-environment-jsdom] [BREAKING] Upgrade to jsdom@20 (#13037, #13058)
    • 🀑 [@jest/globals] Add jest.Mocked, jest.MockedClass, jest.MockedFunction and jest.MockedObject utility types (#12727)
    • πŸ’₯ [jest-mock] [BREAKING] Refactor Mocked* utility types. MaybeMockedDeep and MaybeMocked became Mocked and MockedShallow respectively; only deep mocked variants of MockedClass, MockedFunction and MockedObject are exported (#13123, #13124)
    • πŸ’₯ [jest-mock] [BREAKING] Change the default jest.mocked helper’s behavior to deep mocked (#13125)
    • πŸ’₯ [jest-snapshot] [BREAKING] Let babel find config when updating inline snapshots (#13150)
    • πŸ’₯ [@jest/test-result, @jest/types] [BREAKING] Replace Bytes and Milliseconds types with number (#13155)
    • πŸ‘· [jest-worker] Adds workerIdleMemoryLimit option which is used as a check for worker memory leaks >= Node 16.11.0 and recycles child workers as required (#13056, #13105, #13106, #13107)
    • πŸ’₯ [pretty-format] [BREAKING] Remove ConvertAnsi plugin in favour of jest-serializer-ansi-escapes (#13040)
    • [pretty-format] Allow to opt out from sorting object keys with compareKeys: null (#12443)

    πŸ›  Fixes

    • βœ… [jest-config] Fix testing multiple projects with TypeScript config files (#13099)
    • [@jest/expect-utils] Fix deep equality of ImmutableJS Record (#13055)
    • [jest-haste-map] Increase the maximum possible file size that jest-haste-map can handle (#13094)
    • πŸ“¦ [jest-runtime] Properly support CJS re-exports from dual packages (#13170)
    • [jest-snapshot] Make prettierPath optional in SnapshotState (#13149)
    • πŸ“œ [jest-snapshot] Fix parsing error from inline snapshot files with JSX (#12760)
    • πŸ‘· [jest-worker] When a process runs out of memory worker exits correctly and doesn't spin indefinitely (#13054)

    🚧 Chore & Maintenance

    • [*] [BREAKING] Drop support for Node v12 and v17 (#13033)
    • πŸ“„ [docs] Fix webpack name (#13049)
    • πŸ“„ [docs] Explicit how to set n for --bail (#13128)
    • ⚑️ [docs] Update Enzyme URL (#13166)
    • 🚚 [jest-leak-detector] Remove support for weak-napi (#13035)
    • πŸ’₯ [jest-snapshot] [BREAKING] Require rootDir as argument to SnapshotState (#13150)