eslint-find-rules
を使うと設定されていないルールがあるとそれを教えてくれます。
sarbbottam/eslint-find-rules: Find built-in ESLint rules you don't have in your custom config
これを使いeslint-config
をテストしてやることで新しく入った項目を取り逃すことがありません。
package.json
"find-new-rules": "npm-run-all --parallel find-new-rules:*",
"find-new-rules:jest": "eslint-find-rules --unused ./other/test/jest.js",
"find-new-rules:flow": "eslint-find-rules --unused ./other/test/flow.js",
"find-new-rules:main": "eslint-find-rules --unused ./index.js",
"test": "npm run find-new-rules"
さらにGreenKeeper
やsemantic-release
などを組み合わせることで簡単に常に最新のeslint-config
を保つことが出来ると思います。
自分はESLintの設定を一つずつ見てだいたい4時間ぐらいかけて全ての項目を設定しましたが、既存のconfigをextends
すれば手間は大きく減ると思います。
おわりに
jestやflowなど自分の環境に特化したconfigをakameco/eslint-config-precure: ESLint shareable config for akamecoで公開しています。
npmを見ると月800ダウンロード程度あって一体自分以外に誰が使っているんだという気持ちもありますが、全てのconfigを一つずつ設定していったあの時間が無駄ではなかったと思えるのでハッピーです。
何かあれば是非Twitterにて議論しましょう😎
”eslint-config-自分の名前”にすると異常にプロジェクトに入れづらくなるのでeslint-config-dragonみたいな強い名前にする必要がある
— あかめ@アルバイト.js (@akameco) May 5, 2017