NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2199 most downloaded on npm
ESLint rules for Jest
Last release 18 days ago
30 Aug 2026
Release timing varies
gaps range from 8 days to 3 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
10 years old
381 releases · first in 2016
allow [@typescript-eslint](https://github.com/typescript-eslint) v8
One column per quarter.
allow @typescript-eslint/utils v7 as a direct dependency
valid-expect: supporting automatically fixing missing await in some cases
prefer importing jest globals for specific types
support providing aliases for @jest/globals package
max-expects: properly reset counter when exiting a test case
instanceof RegExp check for ESLint v9 compatibility (#1542) (af4a9c9)@typescript-eslint/eslint-plugin v5 (#1530) (150e355)no-if rule (#1528) (f976fc8)snapshot processor and flat/snapshot config (#1532) (98087f9)@typescript-eslint/utils to v6 (#1508) (dc6e8cd)snapshot processor and flat/snapshot config@typescript-eslint/eslint-plugin v5no-if in favor of no-conditional-in-testsnapshot processor and flat/snapshot config@typescript-eslint/eslint-plugin v5no-if in favor of no-conditional-in-testadd prefer-importing-jest-globals rule (#1490) (37478d8), closes #1101
allow ESLint 9 as peer dependency
instanceof RegExp check for ESLint v9 compatibility (#1542) (af4a9c9)@typescript-eslint/eslint-plugin v5 (#1530) (150e355)no-if rule (#1528) (f976fc8)snapshot processor and flat/snapshot config (#1532) (98087f9)@typescript-eslint/utils to v6 (#1508) (dc6e8cd)snapshot processor and flat/snapshot config@typescript-eslint/eslint-plugin v5no-if in favor of no-conditional-in-testallow ESLint 9 as peer dependency
no-large-snapshots: avoid instanceof RegExp check for ESLint v9 compatibility
remove snapshot processor and flat/snapshot config
snapshot processor and flat/snapshot configdrop support for @typescript-eslint/eslint-plugin v5
@typescript-eslint/eslint-plugin v5upgrade @typescript-eslint/utils to v6
# 28.0.0-next.2 (2024-03-21) ### Features * drop support for Node v14 (#1527) (df5e580) ### BREAKING CHANGES * dropped support for Node v14
removed no-if in favor of no-conditional-in-test
no-if in favor of no-conditional-in-testadd should-be-fine support for flat configs
# 27.8.0 (2024-02-13) ### Features * support failing.each
# 27.8.0-next.1 (2024-02-13) ### Features * support failing.each
allow [@typescript-eslint](https://github.com/typescript-eslint) v7
replace use of deprecated methods
Revert "chore: use relative path to parent tsconfig.json (#1476)" (5e6199d), closes #1476
include plugin meta information with snapshot processor for ESLint v9
include plugin meta information for ESLint v9
valid-title: allow ignoring tests with non-string titles
expect-expert: change reporting node
make rule message punctuation consistent
no-focused-tests: make reporting location consistent
valid-title: support ignoring leading and trailing whitespace
# 27.3.0 (2023-09-15) ### Features * add no-confusing-set-time rule
allow @typescript-eslint/eslint-plugin v6 as peer dep (#1400) (04b2bf2), closes #1398
add missing (optional) peer dependency on Jest
valid-expect-in-promise: handle sparse arrays
create no-untyped-mock-factory rule
## 27.1.7 (2022-12-15) ### Bug Fixes * prefer-spy-on: improve autofix
ensure rule fixes produce valid code when function params and args have trailing commas
use Set instead of iterating, and deduplicate a function
don't collect more info than needed when resolving jest functions
no-restricted-jest-methods: don't crash on jest()
valid-expect-in-promise: adjust grammar in rule message
prefer-to-be: support negative numbers
create no-restricted-jest-methods rule
consistent rule doc notices and sections
ensure jest globals are enabled in styles config
no-restricted-matchers: improve check to not be solely based on the start of the matcher chain (#1236) (5fe4568), closes #1235
prefer-expect-assertions: report on concise arrow functions with expect call
eslint@6 (#1212) (21fc2fe)no-alias-methods recommended (#1221) (914b24a)no-alias-methods is now recommended as the methods themselves will be removed in the next major version of Jestno-jest-import ruleunbound-method base rule are no longer suppressed - really this means that if you don't specify project when this rule is enabled and @typescript-eslint/eslint-plugin is present, that error will no longer be suppressed instead of silently doing nothing; it will still not throw if this rule is enabled without the base rule being presentno-restricted-matchers now checks against the start of the expect chain, meaning you have to explicitly list each possible matcher & modifier permutations that you want to restrictno-alias-methods recommended (#1221) (914b24a)no-alias-methods is now recommended as the methods themselves will be removed in the next major version of Jestno-jest-import ruleunbound-method base rule are no longer suppressed - really this means that if you don't specify project when this rule is enabled and @typescript-eslint/eslint-plugin is present, that error will no longer be suppressed instead of silently doing nothing; it will still not throw if this rule is enabled without the base rule being presentno-restricted-matchers now checks against the start of the expect chain, meaning you have to explicitly list each possible matcher & modifier permutations that you want to restricteslint@6 (#1212) (21fc2fe)unbound-method: don't suppress errors from base rule
eslint@6 (#1212) (21fc2fe)no-alias-methods recommended (#1221) (914b24a)no-alias-methods is now recommended as the methods themselves will be removed in the next major version of Jestno-jest-import ruleunbound-method base rule are no longer suppressed - really this means that if you don't specify project when this rule is enabled and @typescript-eslint/eslint-plugin is present, that error will no longer be suppressed instead of silently doing nothing; it will still not throw if this rule is enabled without the base rule being presentno-restricted-matchers now checks against the start of the expect chain, meaning you have to explicitly list each possible matcher & modifier permutations that you want to restrictunbound-method: don't suppress errors from base rule
no-alias-methods recommended (#1221) (914b24a)no-alias-methods is now recommended as the methods themselves will be removed in the next major version of Jestno-jest-import ruleunbound-method base rule are no longer suppressed - really this means that if you don't specify project when this rule is enabled and @typescript-eslint/eslint-plugin is present, that error will no longer be suppressed instead of silently doing nothing; it will still not throw if this rule is enabled without the base rule being presentno-restricted-matchers now checks against the start of the expect chain, meaning you have to explicitly list each possible matcher & modifier permutations that you want to restrictdrop support for Node versions 12 and 17
eslint@6 (#1212) (21fc2fe)# 26.9.0 (2022-08-28) ### Features * create prefer-each rule
prefer-expect-assertions: report on concise arrow functions
max-expect: reset expect counter when entering and exiting test function calls
prefer-expect-assertions: use scoped based jest fn call parser for expect checks
prefer-mock-promise-shorthand: ignore mockImplementation functions that have parameters
cache jest fn call parsing results
max-expects: don't count expect. () calls towards max
no-standalone-expect: only report on expect.hasAssertions & expect.assertions member calls
# 26.8.0 (2022-08-07) ### Features * resolve expect based on scope
create prefer-mock-promise-shorthand rule
# 26.6.0 (2022-07-14) ### Features * create max-expects rule
Your coding agent can read these notes before it upgrades. Set up the MCP server →