v4.14.0 | 次 v4.16.0

ESLint 4.15.0 がリリースされました。
小さな機能追加とバグ修正が含まれています。

質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。

🏢 日本語 Issue 管理リポジトリ
👫 日本語サポート チャット
🏢 本家リポジトリ
👫 本家サポート チャット

🚀 本体への機能追加

#9165: messageId

ルール・プラグイン開発者向け。

従来は各検証ルールがエラーを報告する場合、context.report({ node, message: "Oops!" }) のように、エラーメッセージを直接報告していました。この機能追加によって、次のように messageId を利用して、エラーメッセージを分離できるようになります。

ルール
module.exports = {
    meta: {
        description: "Disallow 'foo' as identifier.",
        messages: {
            avoidName: "Avoid using variables named '{{name}}'.",
        },
        schema: [],
    },
    create(context) {
        return {
            Identifier(node) {
                if (node.name === "foo") {
                    context.report({
                        node,
                        messageId: "avoidName",
                        data: { name: "foo" },
                    });
                }
            }
        };
    }
};
テスト
const RuleTester = require("eslint").RuleTester
const rule = require("../../../lib/rules/no-foo")

var ruleTester = new RuleTester()
ruleTester.run("no-foo", rule, {
    valid: [
        "bar",
        "baz",
    ],
    invalid: [
        {
            code: "foo",
            errors: [
                { messageId: 'avoidName', data: { name: "foo" } },
            ],
        },
    ],
})

エラーメッセージの i18n を行うための布石です。

詳細はこちらを御覧ください。

#9782: CLIEngine#getRules()

エディタの拡張機能などのツール開発者向け。

CLIEngine クラスに、現在ロードされているルールの一覧を取得するメソッド getRules() が追加されました。

💡 新しいルール

特になし。

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

#9752: indent ignoreComments

インデント ルールにコメントを無視するオプションが追加されました。

✒️ eslint --fix をサポートしたルール

特になし。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.