ESLint v3.1.0 released: https://t.co/F85E9yXTC9
— ESLint (@geteslint) 2016年7月15日
ESLint 3.1.0 がリリースされました。
小さな機能追加といくつかのバグ修正が行われています。
質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。
コアへの機能追加
#3307: Lint 結果にて問題の位置を範囲指定できるようになった
この機能はプラグインやカスタム ルール、およびエディタ連携ツールの開発者向けです。
従来、Lint 結果の各問題は位置情報 (行番号と列番号) を持っていました。これは CLI ツールとしては問題ないのですが、エディタ上に問題を表示する際に不便でした。現状のエディタ連携ツールでは、示された位置にある単語に赤線を引いたり、行全体に赤線を引いたりと工夫しています。
v3.1.0
より、Lint 結果の各問題は範囲情報 (開始位置と終了位置) を持つことができるようになりました。詳細は #6640 を御覧ください。
新しいルール
#6066: multiline-ternary
JSCS 互換ルールです。
三項演算子を使うとき、必ず改行するように矯正します。
/*eslint multiline-ternary: error*/
// ✔ GOOD
var a = foo > bar ?
value1 :
value2;
var b = foo > bar
? value1
: value2;
// ✘ BAD
var c = foo > bar ? value1 : value2;
オプションが追加されたルール
#4133: spaced-comment
複数行コメントの末尾スペースに関するオプションが追加されました。
従来は末尾スペースの有無をチェックしていませんでしたが、このオプションを使うと末尾スペースの有無と先頭スペースの有無がマッチしているかどうかチェックします。
/*eslint spaced-comment: [error, always, {block: {balanced: true}}]*/
// ✔ GOOD
/* this is a comment */
// ✘ BAD
/* this is a comment*/
/*this is a comment */
3.1.0 現在、なんかバグってる...
→ 3.1.1 で修正されました
#5613: key-spacing
単一行のオブジェクト リテラルと複数行のオブジェクト リテラルで異なる設定をできるようになりました。
/*eslint key-spacing: [error, {
singleLine: {beforeColon: false, afterColon: true},
multiLine: {beforeColon: true, afterColon: true, align: colon}
}]*/
// ✔ GOOD
var obj = {one: 1, two: 2, three: 3};
var obj2 = {
two : 2,
three : 3
};
// ✘ BAD
var obj = {one : 1, two : 2, three : 3};
var obj2 = {
two: 2,
three: 3
};