{"id":19727,"library":"eslint-plugin-disable-autofix","title":"eslint-plugin-disable-autofix","description":"ESLint plugin that disables autofix for specific rules without turning them off entirely, allowing rules to report but not auto-fix. Version 6.1.1 supports ESLint 9 flat config exclusively, with proxy-based lazy loading for improved performance. Key differentiators: requires no manual prefix handling in flat config, automatically wraps rules to prevent autofix, and includes a `configure()` helper for easy setup. Active development, frequent releases.","status":"active","version":"6.1.1","language":"javascript","source_language":"en","source_url":"https://github.com/chiefmikey/eslint-plugin-disable-autofix","tags":["javascript","eslint","eslintplugin","eslint-plugin","disable","autofix","suggestions","flat-config","typescript"],"install":[{"cmd":"npm install eslint-plugin-disable-autofix","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-disable-autofix","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-disable-autofix","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency, required at version >=9.0.0 for flat config support","package":"eslint","optional":false}],"imports":[{"note":"Package is ESM-only; default export is the plugin object.","wrong":"const plugin = require('eslint-plugin-disable-autofix')","symbol":"plugin","correct":"import plugin from 'eslint-plugin-disable-autofix'"},{"note":"Named export from main entry point, not a subpath.","wrong":"import { configure } from 'eslint-plugin-disable-autofix/configure'","symbol":"configure","correct":"import { configure } from 'eslint-plugin-disable-autofix'"},{"note":"Named export, not a separate utility file.","wrong":"import { createPlugin } from 'eslint-plugin-disable-autofix/utils'","symbol":"createPlugin","correct":"import { createPlugin } from 'eslint-plugin-disable-autofix'"}],"quickstart":{"code":"// eslint.config.js\nimport plugin from 'eslint-plugin-disable-autofix';\nimport js from '@eslint/js';\n\nexport default [\n  js.configs.recommended,\n  {\n    plugins: {\n      'disable-autofix': plugin,\n    },\n    rules: {\n      'disable-autofix/no-autofix': ['error', { rules: ['no-unused-vars', 'semi'] }],\n    },\n  },\n];\n","lang":"javascript","description":"Flat config example: disables autofix for 'no-unused-vars' and 'semi' rules."},"warnings":[{"fix":"Migrate to flat config (eslint.config.js) or stay on v4.x for legacy ESLint 8 support.","message":"Version 5.0+ requires ESLint 9 (flat config only); not compatible with .eslintrc or legacy config.","severity":"breaking","affected_versions":">=5.0.0"},{"fix":"Use `configure({ rules: ['rule-name'] })` instead of manually setting `'disable-autofix/no-autofix'`.","message":"The old `no-autofix` rule configuration is deprecated in favor of `configure()` helper.","severity":"deprecated","affected_versions":">=6.1.0"},{"fix":"Ensure eslint.config.js is used and eslint >=9.0.0 is installed.","message":"The plugin only works with ESLint 9 flat config; attempts to use with legacy config will silently fail to disable autofix.","severity":"gotcha","affected_versions":">=5.0.0"},{"fix":"Use the `configure` helper to automatically add prefixes.","message":"When using `createPlugin()`, you must prefix rule names with the plugin name, e.g. `'plugin-name/rule-name'`, unless you set `mode: 'prefixed'` explicitly.","severity":"gotcha","affected_versions":">=6.1.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run `npm install eslint-plugin-disable-autofix --save-dev`.","cause":"Package not installed or not found in node_modules.","error":"Error: Cannot find module 'eslint-plugin-disable-autofix'"},{"fix":"Update to v6.1.1+ (npm update eslint-plugin-disable-autofix).","cause":"Outdated version of the plugin that used fragile filesystem paths.","error":"Error: Failed to load plugin 'disable-autofix': Cannot find module 'eslint/use-at-your-own-risk'"},{"fix":"Ensure the plugin is added to `plugins` and use `'disable-autofix/no-autofix'` as the rule key.","cause":"Using legacy rule name 'no-autofix' without proper prefix or missing plugin in config.","error":"Error: Rule 'no-autofix' is not defined in 'disable-autofix' plugin"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}