Help us understand the problem. What is going on with this article?

ESLint v2.8.0

More than 3 years have passed since last update.

v2.6.0 | 次 v2.9.0

小さな機能改善といくつかのバグ修正が行われました。
質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。

今回は機能改善等よりも、JSCS チームが ESLint チームに合流したことのほうが大きなニュースですね。

また、ロゴが変わりました。
このロゴで法的な手続きとかするらしいです (商標対策)。


以下は機能改善のピックアップです。

オプションが追加されたルール

#3065: no-extra-parens

/*eslint no-extra-parens: ["error", "all", {"nestedBinaryExpressions": false}]*/

x = a || (b && c);
x = a + (b * c);
x = (a * b) / c;

構文上意味のないカッコであっても、ネストされた二項演算子を囲むものは許容するオプションが追加されました。
特に &&|| が混在する場合はカッコをつけるべしというコーディング スタイルは多そうですね。

#4127: space-before-function-paren

/*eslint space-before-function-paren: ["error", {"anonymous": "ignore", "named": "never"}]*/

// ignore にすると空白の有無にかかわらず警告されない
var bar = function() {};
var bar = function () {};

// "named": "never" なので名前付き関数は空白無しで
var bar = function bar() {};

空白があっても無くても警告しない (無視する) ためのオプションが追加されました。

このルールは、匿名関数と名前付き関数で異なる設定を適用できます。
今回の無視オプション追加によって、例えば名前付き関数だけを警告する、ということができるようになりました。

#5234: quotes

/*eslint quotes: ["error", "double", {"avoidEscape": true, "allowTemplateLiterals": true}]*/

var foo = "double";
var foo = 'a string containing "double" quotes';
var foo = `a string containing "double" quotes`;

埋込式を持たないテンプレート リテラルを許容するオプションが追加されました。
デフォルトでは"double""single"を指定した場合、埋込式を持たないテンプレート リテラルは警告されます (文字列リテラルに単純変換できるため)。

#5675: prefer-arrow-callback

/*eslint prefer-arrow-callback: ["error", {"allowNamedFunctions": true}]*/

foo(function bar() {});

名前付き関数式を警告しないためのオプションが追加されました。
名前付き関数式は、デバッグ時にスタック トレースを読みやすくしてくれます。

#5757: no-fallthrough

/*eslint no-fallthrough: ["error", {"commentPattern": "ふぉーるするー"}]*/

switch(foo) {
    case 1:
        doSomething();
        // ふぉーるするー
    case 2:
        doSomething();
}

意図的に fall through を行っていることを示すコメント文をカスタマイズできるようになりました。
デフォルトは /falls?\s?through/i になっています。

#5800: no-empty

/*eslint no-empty: ["error", {"allowEmptyCatch": true}]*/

try {
    doSomething();
} catch (ex) {}

空の catch ブロックを許可するオプションが追加されました。

この要求は過去に何度もあったのですが、そのたびに Reject されていました。
今回、JSCS がこのオプションを持っているため、移行支援のために追加された次第です。


今回はほとんど活動できてなかったので、次回は頑張りたいな...

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away