Socket
Socket
Sign inDemoInstall

eslint-plugin-deprecation

Package Overview
Dependencies
3
Maintainers
1
Versions
18
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-deprecation

ESLint rule that reports usage of deprecated code


Version published
Weekly downloads
511K
decreased by-14.22%
Maintainers
1
Created
Weekly downloads
 

Package description

What is eslint-plugin-deprecation?

The eslint-plugin-deprecation package is an ESLint plugin that helps developers identify and manage deprecated code in their JavaScript projects. It allows you to mark certain functions, methods, or properties as deprecated and provides warnings or errors when they are used.

What are eslint-plugin-deprecation's main functionalities?

Detect Deprecated Functions

This feature allows you to specify deprecated functions and provide a custom message. When the deprecated function is used, ESLint will warn the developer.

module.exports = {
  rules: {
    'deprecation/deprecation': [
      'warn',
      {
        'methods': {
          'myDeprecatedFunction': 'This function is deprecated. Use newFunction instead.'
        }
      }
    ]
  }
};

Detect Deprecated Properties

This feature allows you to mark object properties as deprecated. When the deprecated property is accessed, ESLint will issue a warning.

module.exports = {
  rules: {
    'deprecation/deprecation': [
      'warn',
      {
        'properties': {
          'myObject.oldProperty': 'This property is deprecated. Use newProperty instead.'
        }
      }
    ]
  }
};

Custom Deprecation Messages

This feature allows you to provide custom deprecation messages for both methods and properties, giving developers clear guidance on what to use instead.

module.exports = {
  rules: {
    'deprecation/deprecation': [
      'warn',
      {
        'methods': {
          'oldFunction': 'oldFunction is deprecated. Please use newFunction.'
        },
        'properties': {
          'oldProperty': 'oldProperty is deprecated. Please use newProperty.'
        }
      }
    ]
  }
};

Other packages similar to eslint-plugin-deprecation

Readme

Source

eslint-plugin-deprecation

Test Workflow Release Workflow Maintainability Npm Npm Downloads Size License semantic-release

An ESLint rule that reports usage of deprecated code.

Prerequisites

If you already use TypeScript and one or more rules from the typescript-eslint plugin, then eslint-plugin-deprecation will work out of the box without any additional dependencies or special configuration specified in this section. (This is because @typescript-eslint/plugin automatically contains @typescript-eslint/parser and your ESLint should already be configured with the parserOptions to work properly with TypeScript.)

Otherwise, in order for you to use this plugin, you must also install the following dependencies:

  • typescript
  • @typescript-eslint/parser

For example, if you use the npm package manager, then you would run the following command in the root of your project:

npm install --save-dev typescript @typescript-eslint/parser

Next, you must configure ESLint to parse TypeScript and include type information:

{
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaVersion": 2020,
    "sourceType": "module",
    "project": "./tsconfig.json" // <-- Point to your project's "tsconfig.json" or create a new one.
  }
}

Install

For example, if you use the npm package manager, then you would run the following command in the root of your project:

npm install --save-dev eslint-plugin-deprecation

Setup

The easiest way to use this plugin is to extend from the recommended config, like this:

{
  "extends": [
    "plugin:deprecation/recommended",
  ],
}

The recommended config will enable the plugin and enable the deprecation/deprecation rule with a value of error.

Manually Enable the Plugin and Rule

If you don't want to use the recommended config for some reason, you can accomplish the same thing by specifying the following config:

{
  "plugins": [
    "deprecation",
  ],

  "rules": {
    "deprecation/deprecation": "error",
  },
}

Credits

This rule was originally ported from the SonarJS repository.

FAQs

Package last updated on 13 Sep 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc