Skip to content

25.1.0

Compare
Choose a tag to compare
@SimenB SimenB released this 22 Jan 08:14

Features

  • [babel-plugin-jest-hoist] Show codeframe on static hoisting issues (#8865)
  • [babel-plugin-jest-hoist] Add BigInt to ALLOWED_IDENTIFIERS (#8382)
  • [babel-preset-jest] Add @babel/plugin-syntax-bigint (#8382)
  • [expect] Add BigInt support to toBeGreaterThan, toBeGreaterThanOrEqual, toBeLessThan and toBeLessThanOrEqual (#8382)
  • [expect, jest-matcher-utils] Display change counts in annotation lines (#9035)
  • [expect, jest-snapshot] Support custom inline snapshot matchers (#9278)
  • [jest-config] Throw the full error message and stack when a Jest preset is missing a dependency (#8924)
  • [jest-config] [BREAKING] Set default display name color based on runner (#8689)
  • [jest-config] Merge preset globals with project globals (#9027)
  • [jest-config] Support .cjs config files (#9291)
  • [jest-config] [BREAKING] Support .mjs config files (#9431)
  • [jest-core] Support reporters as default exports (#9161)
  • [jest-core] Support --findRelatedTests paths case insensitivity on Windows (#8900)
  • [jest-diff] Add options for colors and symbols (#8841)
  • [jest-diff] [BREAKING] Export as ECMAScript module (#8873)
  • [jest-diff] Add includeChangeCounts and rename Indicator options (#8881)
  • [jest-diff] Add changeColor and patchColor options (#8911)
  • [jest-diff] Add trailingSpaceFormatter option and replace cyan with commonColor (#8927)
  • [jest-diff] Add firstOrLastEmptyLineReplacement option and export 3 diffLines functions (#8955)
  • [jest-environment] Add optional getVmContext next to runScript (#9252 & #9428)
  • [jest-environment-jsdom] Add fakeTimersLolex (#8925)
  • [jest-environment-node] Add fakeTimersLolex (#8925)
  • [jest-environment-node] Add queueMicrotask (#9140)
  • [jest-environment-node] Implement getVmContext (#9252 & #9428)
  • [@jest/fake-timers] Add Lolex as implementation of fake timers (#8897)
  • [jest-get-type] Add BigInt support. (#8382)
  • [jest-matcher-utils] Add BigInt support to ensureNumbers ensureActualIsNumber, ensureExpectedIsNumber (#8382)
  • [jest-matcher-utils] Ignore highlighting matched asymmetricMatcher in diffs (#9257)
  • [jest-reporters] Export utils for path formatting (#9162)
  • [jest-reporters] Provides global coverage thresholds as watermarks for istanbul (#9416)
  • [jest-runner] Warn if a worker had to be force exited (#8206)
  • [jest-runtime] [BREAKING] Do not export ScriptTransformer - it can be imported from @jest/transform instead (#9256)
  • [jest-runtime] Use JestEnvironment.getVmContext and vm.compileFunction if available to avoid the module wrapper (#9252 & #9428)
  • [jest-snapshot] Display change counts in annotation lines (#8982)
  • [jest-snapshot] [BREAKING] Improve report when the matcher has properties (#9104)
  • [jest-snapshot] Improve colors when snapshots are updatable (#9132)
  • [jest-snapshot] Ignore indentation for most serialized objects (#9203)
  • [jest-transform] Create createTranspilingRequire function for easy transpiling modules (#9194)
  • [jest-transform] [BREAKING] Return transformed code as a string, do not wrap in vm.Script (#9253)
  • [@jest/test-result] Create method to create empty TestResult (#8867)
  • [jest-worker] [BREAKING] Return a promise from end(), resolving with the information whether workers exited gracefully (#8206)
  • [jest-reporters] Transform file paths into hyperlinks (#8980)

Fixes

  • [expect] Display expectedDiff more carefully in toBeCloseTo (#8389)
  • [expect] Avoid incorrect difference for subset when toMatchObject fails (#9005)
  • [expect] Consider all RegExp flags for equality (#9167)
  • [expect] [BREAKING] Consider primitives different from wrappers instantiated with new (#9167)
  • [expect] Prevent maintaining RegExp state between multiple tests (#9289)
  • [expect] Fix subsetEquality false circular reference detection (#9322)
  • [jest-config] Use half of the available cores when watchAll mode is enabled (#9117)
  • [jest-config] Fix Jest multi project runner still cannot handle exactly one project (#8894)
  • [jest-console] Add missing console.group calls to NullConsole (#9024)
  • [jest-core] Don't include unref'd timers in --detectOpenHandles results (#8941)
  • [jest-core] Limit number of workers when creating haste maps in projects (#9259)
  • [jest-diff] Do not inverse format if line consists of one change (#8903)
  • [jest-diff] Rename some new options and change their default values (#9077)
  • [jest-environment-node] Fix TextEncoder.encode not referencing same global Uint8Array constructor (#9261)
  • [jest-fake-timers] getTimerCount will not include cancelled immediates (#8764)
  • [jest-fake-timers] Support util.promisify on setTimeout (#9180)
  • [jest-jasmine2, jest-circus] Improve error message format for Node's assert.fail (#9262)
  • [jest-leak-detector] [BREAKING] Use weak-napi instead of weak package (#8686)
  • [jest-mock] Fix for mockReturnValue overriding mockImplementationOnce (#8398)
  • [jest-reporters] Make node-notifier an optional dependency (#8918)
  • [jest-reporters] Make all arguments to methods on BaseReporter optional (#9159)
  • [jest-resolve]: Set MODULE_NOT_FOUND as error code when module is not resolved from paths (#8487)
  • [jest-resolve-dependencies] Handle dynamic dependencies correctly even when using module maps (#9303)
  • [jest-snapshot] Remove only the added newlines in multiline snapshots (#8859)
  • [jest-snapshot] Distinguish empty string from external snapshot not written (#8880)
  • [jest-snapshot] [BREAKING] Distinguish empty string from internal snapshot not written (#8898)
  • [jest-snapshot] [BREAKING] Remove report method and throw matcher errors (#9049)
  • [jest-snapshot] Omit irrelevant received properties when property matchers fail (#9198)
  • [jest-transform] Properly cache transformed files across tests (#8890)
  • [jest-transform] Don't fail the test suite when a generated source map is invalid (#9058)
  • [jest-types] [BREAKING] Use less null | undefined in config types (#9200)
  • [jest-util] Allow querying process.domain (#9136)
  • [pretty-format] Correctly detect memoized elements (#9196)
  • [pretty-format] Fix pretty-format to respect displayName on forwardRef (#9422)

Chore & Maintenance

  • [*] [BREAKING] Drop support for Node 6 (#8455)
  • [*] Add Node 12 to CI (#8411)
  • [*] [BREAKING] Upgrade to Micromatch v4 (#8852)
  • [babel-plugin-jest-hoist] [BREAKING] Use ESM exports (#8874)
  • [docs] Add alias and optional boolean value to coverage CLI Reference (#8996)
  • [docs] Fix broken link pointing to legacy JS file in "Snapshot Testing".
  • [docs] Add setupFilesAfterEnv and jest.setTimeout example (#8971)
  • [expect] Test that toStrictEqual is equivalent to Node's assert.deepStrictEqual (#9167)
  • [jest] [BREAKING] Use ESM exports (#8874)
  • [jest-cli] [BREAKING] Use ESM exports (#8874)
  • [jest-cli] [BREAKING] Remove re-exports from @jest/core (#8874)
  • [jest-diff] Remove the need to export splitLines0 function (#9151)
  • [jest-environment-jsdom] [BREAKING] Upgrade JSDOM from v11 to v15 (#8851)
  • [jest-haste-map] Upgrade to fsevents@2 (#9215)
  • [jest-reporters] [BREAKING] Upgrade Istanbul dependencies, which are used for code coverage (#9192)
  • [jest-util] [BREAKING] Remove deprecated exports (#8863)
  • [jest-validate] [BREAKING] Use ESM exports (#8874)
  • [jest-types] Mark InitialOptions as Partial (#8848)
  • [jest-config] Refactor normalize to be more type safe (#8848)