This rule allows you to forbid some function usage and to suggest some alternative. Useful for large teams while refactoring a codebase.
Options are passed as a list after the severity (no nested array). Each item may be a string (deprecated name only) or an object with name and optional use (suggested alternative).
.eslintrc or flat config:
{
"plugins": ["deprecate"],
"rules": {
"deprecate/function": ["error", { "name": "legacyFunc", "use": "newFunc from this package" }]
}
}// any function call with name legacyFunc
console.log(legacyFunc());
legacyFunc();Pass deprecated function names as strings (no replacement message):
"deprecate/function": ["error", "legacyFunc", "otherDeprecatedFn"]Or pass objects to suggest an alternative:
"deprecate/function": [
"error",
{ "name": "legacyFunc", "use": "newFunc from this package" },
{ "name": "oldHelper", "use": "use helper from 'utils/helper'" }
]- name (required): The deprecated function name.
- use (optional): Message shown as the suggested alternative.
When you don't want to forbid specific function usage in your codebase.