babel/eslint/babel-eslint-plugin-development-internal
Kai Cataldo 4ac9c7afe2
Upgrade to ESLint v7 (#11857)
* Upgrade to ESLint v7

* Upgrade eslint-plugin-import

* Update peer deps

* Remove max-len from ESLint config

* Update tests

* Only test babel-eslint-* packages in Node >=10

* Remove babel-eslint

* Fix linking in dev

* Add comment to Makefile

* Fix e2e tests

* Add --ignore-engines flag when installing in ESLint packages

* fix: convert tt.questionDot to Punctuator

* chore: update lockfile

Co-authored-by: Huáng Jùnliàng <jlhwung@gmail.com>
2020-07-29 19:11:48 -04:00
..
2020-07-29 19:11:48 -04:00
2020-07-29 19:11:48 -04:00
2020-07-29 19:11:48 -04:00

@babel/eslint-plugin-development-internal

The Babel team's custom ESLint rules for the babel/babel monorepo.

Installation

$ npm install --save-dev @babel/eslint-plugin-development-internal

or

$ yarn add --save-dev @babel/eslint-plugin-development-internal

Usage

The plugin can be loaded in your .eslintrc.* configuration file as follows: (note that you can omit the eslint-plugin- prefix):

{
  "plugins": ["@babel/development-internal"]
}

Rules

@babel/development-internal/dry-error-messages

Intended for use in packages/babel-parser/src/**/*. When enabled, this rule warns when this.raise() invocations raise errors that are not imported from a designated error module.

Accepts an object configuration option:

{
  errorModule: string
}

errorModule (required): The rule expects either an absolute path or a module name (for a module in node_modules). Please note that the rule will not check anything if errorModule is not given.

Example configuration:

{
  rules: {
    "@babel/development-internal/dry-error-messages": [
      "error",
      {
        errorModule: "@babel/shared-error-messages"
      }
    ]
  }
}

and

{
  rules: {
    "@babel/development-internal/dry-error-messages": [
      "error",
      {
        errorModule: path.resolve(
          __dirname,
          "packages/shared-error-messages/lib/index.js"
        )
      }
    ]
  }
}