All Versions
128
Latest Version
Avg Release Cycle
9 days
Latest Release
-

Changelog History
Page 2

  • v29.0.1 Changes

    πŸ›  Fixes

    • [jest-snapshot] Pass snapshotFormat through when diffing snapshots (#13181)
  • v29.0.0 Changes

    πŸ”‹ 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 [email protected] (#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)
  • v28.1.3 Changes

    πŸ”‹ Features

    • [jest-leak-detector] Use native FinalizationRegistry when it exists to get rid of external C dependency (#12973)

    πŸ›  Fixes

    • πŸ”’ [jest-changed-files] Fix a lock-up after repeated invocations (#12757)
    • [@jest/expect-utils] Fix deep equality of ImmutableJS OrderedSets (#12977)
    • 🀑 [jest-mock] Add index signature support for spyOn types (#13013, #13020)
    • [jest-snapshot] Fix indentation of awaited inline snapshots (#12986)

    🚧 Chore & Maintenance

    • [*] Replace internal usage of pretty-format/ConvertAnsi with jest-serializer-ansi-escapes (#12935, #13004)
    • ⚑️ [docs] Update spyOn docs (#13000)
  • v28.1.2 Changes

    πŸ›  Fixes

    • [jest-runtime] Avoid star type import from @jest/globals (#12949)

    🚧 Chore & Maintenance

    • πŸ“„ [docs] Mention that jest-codemods now supports Sinon (#12898)
  • v28.1.1 Changes

    πŸ”‹ Features

    • [jest] Expose Config type (#12848)
    • [@jest/reporters] Improve GitHubActionsReporters annotation format (#12826)
    • βœ… [@jest/types] Infer argument types passed to test and describe callback functions from each tables (#12885, #12905)

    πŸ›  Fixes

    • [@jest/expect-utils] Fix deep equality of ImmutableJS OrderedMaps (#12763)
    • πŸ“œ [jest-docblock] Handle multiline comments in parseWithComments (#12845)
    • 🀑 [jest-mock] Improve spyOn error messages (#12901)
    • [jest-runtime] Correctly report V8 coverage with resetModules: true (#12912)
    • πŸ‘· [jest-worker] Make JestWorkerFarm helper type to include methods of worker module that take more than one argument (#12839)

    🚧 Chore & Maintenance

    • ⚑️ [docs] Updated docs to indicate that jest-environment-jsdom is a separate package #12828
    • πŸ“„ [docs] Document the comments used by coverage providers #12835
    • πŸ”Œ [docs] Use docusaurus-remark-plugin-tab-blocks to format tabs with code examples (#12859)
    • [jest-haste-map] Bump walker version (#12324)
  • v28.1.0 Changes

    πŸ”‹ Features

    • βœ… [jest-circus] Add failing test modifier that inverts the behavior of tests (#12610)
    • [jest-environment-node, jest-environment-jsdom] Allow specifying customExportConditions (#12774)

    πŸ›  Fixes

    • 🀑 [expect] Adjust typings of lastCalledWith, nthCalledWith, toBeCalledWith matchers to allow a case there a mock was called with no arguments (#12807)
    • [@jest/expect-utils] Fix deep equality of ImmutableJS Lists (#12763)
    • [jest-core] Do not collect SIGNREQUEST as open handles (#12789)

    🚧 Chore & Maintenance

    • πŸ“š [docs] Specified documentation about --filter CLI docs (#12799)
    • 🚚 [@jest-reporters] Move helper functions from utils.ts into separate files (#12782)
    • [jest-resolve] Replace process.versions.pnp type declaration with @types/pnpapi devDependency (#12783)
  • v28.0.3 Changes

    πŸ›  Fixes

    • [jest-config] Normalize reporters option defined in presets (#12769)
    • [@jest/reporters] Fix trailing slash in matching coverageThreshold key (#12714)
    • 🀑 [jest-resolve] Fix (experimental) ESM module mocking for re-exports (#12766)
    • πŸ‘ [@jest/transform] Throw better error if an invalid return value if encountered (#12764)

    🚧 Chore & Maintenance

    • πŸ“„ [docs] Fix typo in --shard CLI docs (#12761)
  • v28.0.2 Changes

    πŸ”‹ Features

    • πŸ‘· [jest-worker] Add JestWorkerFarm helper type (#12753)

    πŸ›  Fixes

    • 🐎 [*] Lower Node 16 requirement to 16.10 from 16.13 due to a Node bug that causes memory and performance issues (#12754)
  • v28.0.1 Changes

    πŸ”‹ Features

    • [jest-resolve] Expose ResolverOptions type (#12736)

    πŸ›  Fixes

    • [expect] Add missing dependency jest-util (#12744)
    • βœ… [jest-circus] Improve test.concurrent (#12748)
    • βœ… [jest-resolve] Correctly throw an error if jsdom test environment is used, but not installed (#12749)

    🚧 Chore & Maintenance

    • 🚚 [jest-serializer] Remove deprecated module from source tree (#12735)
  • v28.0.0 Changes

    πŸ”‹ Features

    • [babel-jest] Export createTransformer function (#12399)
    • [expect] Expose AsymmetricMatchers, MatcherFunction and MatcherFunctionWithState interfaces (#12363, #12376)
    • 🌲 [jest-circus] Support error logging before retry (#12201)
    • βœ… [jest-circus, jest-jasmine2] Allowed classes and functions as describe and it/test names (#12484)
    • πŸ’₯ [jest-cli, jest-config] [BREAKING] Remove testURL config, use testEnvironmentOptions.url instead (#10797)
    • βœ… [jest-cli, jest-core] Add --shard parameter for distributed parallel test execution (#12546)
    • πŸ’₯ [jest-cli] [BREAKING] Remove undocumented --timers option (#12572)
    • πŸ’₯ [jest-config] [BREAKING] Stop shipping jest-environment-jsdom by default (#12354)
    • πŸ’₯ [jest-config] [BREAKING] Stop shipping jest-jasmine2 by default (#12355)
    • [jest-config, @jest/types] Add ci to GlobalConfig (#12378)
    • πŸ’₯ [jest-config] [BREAKING] Rename moduleLoader to runtime (#10817)
    • πŸ’₯ [jest-config] [BREAKING] Rename extraGlobals to sandboxInjectedGlobals (#10817)
    • πŸ’₯ [jest-config] [BREAKING] Throw an error instead of showing a warning if multiple configs are used (#12510)
    • πŸ’₯ [jest-config] [BREAKING] Do not normalize long deprecated configuration options preprocessorIgnorePatterns, scriptPreprocessor, setupTestFrameworkScriptFile and testPathDirs (#12701)
    • βœ… [jest-cli, jest-core] Add --ignoreProjects CLI argument to ignore test suites by project name (#12620)
    • [jest-core] Pass project config to globalSetup/globalTeardown function as second argument (#12440)
    • βœ… [jest-core] Stabilize test runners with event emitters (#12641)
    • πŸ’₯ [jest-core, jest-watcher] [BREAKING] Move TestWatcher class to jest-watcher package (#12652)
    • [jest-core] Allow using Summary Reporter as stand-alone reporter (#12687)
    • πŸ’₯ [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-jsdom] [BREAKING] Pass global config to Jest environment constructor for jsdom environment (#12461)
    • πŸ’₯ [jest-environment-jsdom] [BREAKING] Second argument context to constructor is mandatory (#12469)
    • πŸ’₯ [jest-environment-node] [BREAKING] Add default node and node-addon conditions to exportConditions for node environment (#11924)
    • πŸ’₯ [jest-environment-node] [BREAKING] Pass global config to Jest environment constructor for node environment (#12461)
    • πŸ’₯ [jest-environment-node] [BREAKING] Second argument context to constructor is mandatory (#12469)
    • βœ… [jest-environment-node] Add all available globals to test globals, not just explicit ones (#12642, #12696)
    • [@jest/expect] New module which extends expect with jest-snapshot matchers (#12404, #12410, #12418)
    • [@jest/expect-utils] New module exporting utils for expect (#12323)
    • πŸ’₯ [@jest/fake-timers] [BREAKING] Rename timers configuration option to fakeTimers (#12572)
    • πŸ’₯ [@jest/fake-timers] [BREAKING] Allow jest.useFakeTimers() and projectConfig.fakeTimers to take an options bag (#12572)
    • πŸ’₯ [jest-haste-map] [BREAKING] HasteMap.create now returns a promise (#12008)
    • πŸ‘ [jest-haste-map] Add support for dependencyExtractor written in ESM (#12008)
    • πŸ’₯ [jest-mock] [BREAKING] Rename exported utility types ClassLike, FunctionLike, ConstructorLikeKeys, MethodLikeKeys, PropertyLikeKeys; remove exports of utility types ArgumentsOf, ArgsType, ConstructorArgumentsOf - TS builtin utility types ConstructorParameters and Parameters should be used instead (#12435, #12489)
    • 🀑 [jest-mock] Improve isMockFunction to infer types of passed function (#12442)
    • πŸ’₯ [jest-mock] [BREAKING] Improve the usage of jest.fn generic type argument (#12489)
    • 🀑 [jest-mock] Add support for auto-mocking async generator functions (#11080)
    • 🀑 [jest-mock] Add contexts member to mock functions (#12601)
    • [@jest/reporters] Add GitHub Actions reporter (#11320, #12658)
    • [@jest/reporters] Pass reporterContext to custom reporter constructors as third argument (#12657)
    • πŸ’₯ [jest-resolve] [BREAKING] Add support for package.json exports (#11961, #12373)
    • πŸ“¦ [jest-resolve] Support package self-reference (#12682)
    • 🀑 [jest-resolve, jest-runtime] Add support for data: URI import and mock (#12392)
    • πŸ‘ [jest-resolve, jest-runtime] Add support for async resolver (#11540)
    • πŸ’₯ [jest-resolve] [BREAKING] Remove browser?: boolean from resolver options, conditions: ['browser'] should be used instead (#12707)
    • πŸ“¦ [jest-resolve] Expose JestResolver, AsyncResolver, SyncResolver, PackageFilter, PathFilter and PackageJSON types (#12707, (#12712)
    • [jest-runner] Allow setupFiles module to export an async function (#12042)
    • βœ… [jest-runner] Allow passing testEnvironmentOptions via docblocks (#12470)
    • βœ… [jest-runner] Expose CallbackTestRunner, EmittingTestRunner abstract classes and CallbackTestRunnerInterface, EmittingTestRunnerInterface to help typing third party runners (#12646, #12715)
    • πŸ”’ [jest-runner] Lock version of source-map-support to 0.5.13 (#12720)
    • πŸ’₯ [jest-runtime] [BREAKING] Runtime.createHasteMap now returns a promise (#12008)
    • [jest-runtime] Calling jest.resetModules function will clear FS and transform cache (#12531)
    • πŸ’₯ [jest-runtime] [BREAKING] Remove Context type export, it must be imported from @jest/test-result (#12685)
    • [jest-runtime] Add import.meta.jest (#12698)
    • [@jest/schemas] New module for JSON schemas for Jest's config (#12384)
    • [@jest/source-map] Migrate from source-map to @jridgewell/trace-mapping (#12692)
    • πŸ’₯ [jest-transform] [BREAKING] Make it required for process() and processAsync() methods to always return structured data (#12638)
    • βœ… [jest-test-result] Add duration property to JSON test output (#12518)
    • πŸ’₯ [jest-watcher] [BREAKING] Make PatternPrompt class to take entityName as third constructor parameter instead of this._entityName (#12591)
    • πŸ’₯ [jest-worker] [BREAKING] Allow only absolute workerPath (#12343)
    • πŸ’₯ [jest-worker] [BREAKING] Default to advanced serialization when using child process workers (#10983)
    • [pretty-format] New maxWidth parameter (#12402)

    πŸ›  Fixes

    • [*] Use sha256 instead of md5 as hashing algortihm for compatibility with FIPS systems (#12722)
    • πŸ’₯ [babel-jest] [BREAKING] Pass rootDir as root in Babel's options (#12689)
    • 🚚 [expect] Move typings of .not, .rejects and .resolves modifiers outside of Matchers interface (#12346)
    • [expect] Throw useful error if expect.extend is called with invalid matchers (#12488)
    • [expect] Fix iterableEquality ignores other properties (#8359)
    • πŸ–¨ [expect] Fix print for the closeTo matcher (#12626)
    • [jest-changed-files] Improve changedFilesWithAncestor pattern for Mercurial SCM (#12322)
    • βœ… [jest-circus, @jest/types] Disallow undefined value in TestContext type (#12507)
    • ⚑️ [jest-config] Correctly detect CI environment and update snapshots accordingly (#12378)
    • [jest-config] Pass moduleTypes to ts-node to enforce CJS when transpiling (#12397)
    • πŸ’₯ [jest-config] [BREAKING] Add mjs and cjs to default moduleFileExtensions config (#12578)
    • βœ… [jest-config, jest-haste-map] Allow searching for tests in node_modules by exposing retainAllFiles (#11084)
    • πŸ’₯ [jest-core] [BREAKING] Exit with status 1 if no tests are found with --findRelatedTests flag (#12487)
    • [jest-core] Do not report unref-ed subprocesses as open handles (#12705)
    • βœ… [jest-each] %# is not replaced with index of the test case (#12517)
    • πŸ›  [jest-each] Fixes error message with incorrect count of missing arguments (#12464)
    • [jest-environment-jsdom] Make jsdom accessible to extending environments again (#12232)
    • 🌲 [jest-environment-jsdom] Log JSDOM errors more cleanly (#12386)
    • [jest-environment-node] Add MessageChannel, MessageEvent to globals (#12553)
    • πŸ‘― [jest-environment-node] Add structuredClone to globals (#12631)
    • πŸ’₯ [@jest/expect-utils] [BREAKING] Fix false positives when looking for undefined prop (#8923)
    • [jest-haste-map] Don't use partial results if file crawl errors (#12420)
    • [jest-haste-map] Make watchman existence check lazy+async (#12675)
    • πŸ’₯ [jest-jasmine2, jest-types] [BREAKING] Move all jasmine specific types from @jest/types to its own package (#12125)
    • βœ… [jest-jasmine2] Do not set duration to 0 for skipped tests (#12518)
    • 0️⃣ [jest-matcher-utils] Pass maxWidth to pretty-format to avoid printing every element in arrays by default (#12402)
    • 🀑 [jest-mock] Fix function overloads for spyOn to allow more correct type inference in complex object (#12442)
    • 🀑 [jest-mock] Handle overridden Function.name property (#12674)
    • [@jest/reporters] Notifications generated by the --notify flag are no longer persistent in GNOME Shell. (#11733)
    • 🚚 [@jest/reporters] Move missing icon file which is needed for NotifyReporter class. (#12593)
    • ⚑️ [@jest/reporters] Update v8-to-istanbul (#12697)
    • [jest-resolver] Call custom resolver with core node.js modules (#12654)
    • πŸ‘ [jest-runner] Correctly resolve source-map-support (#12706)
    • πŸ‘· [jest-worker] Fix Farm execution results memory leak (#12497)

    🚧 Chore & Maintenance

    • [*] [BREAKING] Drop support for Node v10 and v15 and target first LTS 16.13.0 (#12220)
    • [*] [BREAKING] Drop support for [email protected], minimum version is now 4.3 (#11142, #12648)
    • [*] Bundle all .d.ts files into a single index.d.ts per module (#12345)
    • [*] Use globalThis instead of global (#12447)
    • πŸ’₯ [babel-jest] [BREAKING] Only export createTransformer (#12407)
    • πŸ“„ [docs] Add note about not mixing done() with Promises (#11077)
    • ⚑️ [docs, examples] Update React examples to match with the new React guidelines for code examples (#12217)
    • πŸ“„ [docs] Add clarity for module factory hoisting limitations (#12453)
    • πŸ“„ [docs] Add more information about how code transformers work (#12407)
    • ⬆️ [docs] Add upgrading guide (#12633)
    • πŸ’₯ [expect] [BREAKING] Remove support for importing build/utils (#12323)
    • πŸ’₯ [expect] [BREAKING] Migrate to ESM (#12344)
    • πŸ’₯ [expect] [BREAKING] Snapshot matcher types are moved to @jest/expect (#12404)
    • ⚑️ [jest-cli] Update yargs to v17 (#12357)
    • πŸ’₯ [jest-config] [BREAKING] Remove getTestEnvironment export (#12353)
    • πŸ’₯ [jest-config] [BREAKING] Rename config option name to id (#11981)
    • [jest-create-cache-key-function] Added README.md file with basic usage instructions (#12492)
    • [@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-haste-map] Remove legacy isRegExpSupported (#12676)
    • ⚑️ [@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-runner] [BREAKING] Second argument to constructor (Context) is not optional (#12640)
    • πŸ’₯ [jest-serializer] [BREAKING] Deprecate package in favour of using v8 APIs directly (#12391)
    • πŸ’₯ [jest-snapshot] [BREAKING] Migrate to ESM (#12342)
    • ⚑️ [jest-transform] Update write-file-atomic to v4 (#12357)
    • πŸ’₯ [jest-types] [BREAKING] Remove Config.Glob and Config.Path (#12406)
    • [jest] Use index.ts instead of jest.ts as main export (#12329)

    🐎 Performance

    • πŸ’₯ [jest-haste-map] [BREAKING] Default to node crawler over shelling out to find if watchman is not enabled (#12320)