babel/eslint/babel-eslint-plugin-development
Kai Cataldo 75c2300c28
Add @babel/eslint-plugin-development-internal (#11376)
* Add @babel/eslint-plugin-internal

* Add dry-error-messages rule

* Address feedback

* Enable new rule

* fix author field

* Fix errors

* Add readme

* Add example configuration

* Handle directories

* run make bootstrap

* More updates!

* Fix errors

* Update tests

* Fix CI race condition
2020-06-22 19:43:29 -04:00
..
Typo 🤦
2018-12-18 22:33:27 +01:00

@babel/eslint-plugin-development

A set of eslint rules to enforce best practices in the development of Babel plugins.

Installation

You'll first need to install ESLint:

$ npm install --save-dev eslint

Next, install @babel/eslint-plugin-development:

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

Then, load the plugin in your .eslintrc configuration file. You can omit the eslint-plugin- prefix:

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

Supported Rules

Note: Rules marked with 🔧 are autofixable.

  • @babel/development/no-deprecated-clone (🔧): Disallows using the deprecated t.clone(node) and t.cloneDeep(node) methods from @babel/types. Those calls are replaced with t.cloneNode(node) when using eslint --fix.
  • @babel/development/no-undefined-identifier: Disallows using t.identifier("undefined") to create a node which represents an undefined value, since it might cause problem if undefined is redeclared.
  • @babel/development/plugin-name: Requires plugins to have a name property, which can be useful for debugging purposes.