npm / eslint-plugin-n
eslint-plugin-n
What changed in eslint-plugin-n 17 to 18, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-17.
5 breaking6 new APIs and options4 behavior and defaults15 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initeslint-plugin-n 1825 changes
Breaking changes 5
The TypeScript peer dependency version constraint was updated, affecting which TypeScript versions are compatible.
The plugin migrated from CommonJS to ESM, changing how projects load it.
The rule now disallows extra properties in its options.
The plugin now requires Node.js >=20 and ESLint >= 8.57.1.
The no-sync rule's ts-declaration-location dependency moved to peerDependencies.
New APIs and options 4
Implements the prefer-import/assert-strict rule.
Adds the prefer-process-get-builtin-module rule.
Adds module.exports support for require(esm) interop.
Support was added for devEngines.runtime in package.json.
Behavior and default changes 4
The no-extraneous rules now support pnpm workspaces.
Classifies util.styleText as experimental.
The rule allows dependencies declared at the workspace root.
The rule was removed from the recommended configuration.
Fixes and other changes 12
The rule now properly handles extension override mappings.
The rule now covers fs.watch.
Handles import.meta paths in no-path-concat.
Supports brace expansion and extglobs in package files.
Reports object, array, and template literals.
HTTP imports are ignored by no-missing-import.
Ensures the package's types have valid syntax.
The rule now handles type-only @types dependencies.
Leading forward slashes are now allowed in the files field.
The rule's support data now covers Node.js 22.20–22.21 and 24.0–24.12.
The rule now recognizes the fs.promises APIs cp, glob, lutimes, opendir, rm, and statfs.
An explicit mapping was added for TypeScript extensions.
eslint-plugin-n 175 changes
New APIs and options 2
Adds the prefer-global/crypto rule.
Adds the prefer-global/timers rule.
Fixes and other changes 3
Handles directory index imports when checking file extensions in imports.
Handles files with dots in their basenames when checking file extensions in imports.
Resolves full typed names for ignore patterns.