タグ

ブックマーク / qiita.com/mysticatea (21)

  • ESLint 設定を Glob ベースでがっつり書き直した - Qiita

    Prettier や TypeScript を使うようになって、3年前に構築してぼちぼち保守してきた自分用の共有設定 eslint-config-mysticatea をそのまま使えないことが増えてきました。また、1年ほど前に Glob ベースで設定できるようになっている ので、この際がっつり書き直すことにしました。 ついでに、ESLint 共有設定を作る際のプラクティスのようなものがまとまっていないと感じたので、まとめてみます。改めて整理してみると、当にバッドノウハウの塊だなぁ...。互換性に縛られずリライトしたいですね...。 新しい共有設定の紹介 新しい設定は @mysticatea/eslint-plugin にあります (eslint-config-mysticatea ではない)。

    ESLint 設定を Glob ベースでがっつり書き直した - Qiita
  • TypeScript on ESLint の未来 - Qiita

    The future of TypeScript on ESLint:https://t.co/PTCWKWN22s — ESLint (@geteslint) January 18, 2019 ESLintTypeScript サポートの今後について、公式にアナウンスがありました。 要点をまとめると、 TypeScript チームが TSLint から ESLint に切り替えていくと発表したよ。 ESLint チームと TypeScript チームが協力して開発を進める場として、typescript-eslint プロジェクトを開始したよ。 既存の部品は新しいプロジェクトの org に移動するよ (typescript-eslint-parser は @typescript-eslint/parser になる、等)。 という感じです。 以下は公式アナウンスの翻訳です。 数週間前、

    TypeScript on ESLint の未来 - Qiita
  • セキュリティ インシデント flatmap-stream@0.1.1 と npm-run-all での対応 - Qiita

    人気のある npm パッケージ event-stream (DL数: 2M/週) が悪意ある攻撃に利用されるというセキュリティ インシデントがありました。 私が管理する npm-run-all (DL数: 440K/週) も間接的に event-stream に依存していたため、インシデントの詳細と私の対応について触れておきます。 何をすべき? あなたのプロジェクトが event-stream に依存している場合は、この依存を削除し、代替手段を探すと良さそうです。event-stream の作者は、このパッケージをメンテナンスしないと明言しています。ただ、これだけ騒ぎになったので、信用できる誰かが引き継ぐ可能性はあります。 [編集(2018/11/30)] 現在は npm 社がパッケージ管理を引き継いでいます。ただ、リポジトリは凍結されており、今後変更されることはないでしょう。 次に、あな

    セキュリティ インシデント flatmap-stream@0.1.1 と npm-run-all での対応 - Qiita
  • ESLint v4.0.0 の変更点まとめ - Qiita

    前 v3.19.0 | 次 v4.1.0 We're excited to announce that ESLint v4.0.0 has been released! https://t.co/sLe0kCwfMA — ESLint (@geteslint) 2017年6月12日 ESLint 4.0.0 がリリースされました! 主にはインデント ルールの改定、公開 API のクラス化、コメント関連の API 変更などです。エンドユーザー向けには特にインデント ルールの改定の影響が大きいでしょう。それ以外は見えないところが変わった感じだと思います。 Release note: 4.0.0-alpha.0 Release note: 4.0.0-alpha.1 Release note: 4.0.0-alpha.2 Release note: 4.0.0-beta.0 Release no

    ESLint v4.0.0 の変更点まとめ - Qiita
  • ESLint v4.1.0 - Qiita

    { "rules": { //... }, "overrides": [ { "files": ["**/*.spec.js"], "env": { mocha: true } } ] } #7348: 各ルールのfix()関数が複数のfixオブジェクトを返せるようになった 自動修正をサポートする検証ルールを作る場合、fix()関数を実装します。 このとき、fix()関数はfixオブジェクトを1つだけしか返せませんでした。v4.1.0から、複数のfixオブジェクトを返すことができるようになります。 例えば、あるノードを囲むカッコを削除するfix()関数は次のように変化します。 context.report({ node, message: "Unexpected parenthesized expression.", fix(fixer) { const openParen = sourc

    ESLint v4.1.0 - Qiita
  • ESLint プラグイン紹介: eslint-plugin-eslint-comments - Qiita

    eslint-plugin-eslint-comments は、ESLint ディレクティブ コメント (/*eslint-disable*/のようなやつ) を使うときのベストプラクティスをまとめた ESLint の追加ルール集です。 ESLint ディレクティブ コメントを使うときは、意図せず有用な警告が抑制されてしまうことを防ぐため、可能な限り影響範囲が狭いように記述すべきです。 このプラグインのルールは、そのための手助けをしてくれます。 インストール ESLint プラグインですので、npm を利用してインストールします。 ESLint をグローバル (--global) にインストールしている場合は、同じくグローバルへ。ESLint をローカル (--save-dev) にインストールしている場合は、同じくローカルへインストールしてください。

    ESLint プラグイン紹介: eslint-plugin-eslint-comments - Qiita
  • ESLint v3.3.0 - Qiita

    前 v3.2.0 | 次 v3.4.0 ESLint v3.3.0 released: https://t.co/F87gDj31Cu — ESLint (@geteslint) 2016年8月12日 ESLint 3.3.0 がリリースされました。 小さな機能追加といくつかのバグ修正が行われています。また、いくつかのルールが非推奨に指定されました。これらの非推奨ルールは将来的 (1年後くらい) に削除されることになります。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 日語 Issue 管理リポジトリ 日語サポート チャット 家リポジトリ 家サポート チャット 非推奨になったルール #2716: no-negated-in-lhs in演算子の左辺に NOT 演算子を書く (例: !"a" in b) と警告するルールでした。 今回instanceof演算子に

    ESLint v3.3.0 - Qiita
  • ESLint v3.2.0 - Qiita

    前 v3.1.0 | 次 v3.3.0 ESLint v3.2.0 released: https://t.co/QbVIzV6MIH — ESLint (@geteslint) 2016年7月29日 ESLint 3.2.0 がリリースされました。 小さな機能追加といくつかのバグ修正が行われています。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 日語 Issue 管理リポジトリ 日語サポート チャット 家リポジトリ 家サポート チャット 新しいルール #6079: no-tabs JSCS 互換ルールです。 ソースコード中でタブを利用することを禁止します。 インデント、コメント、文字列など例外なく禁止するアグレッシブなやつです。 オプションが追加されたルール #1801: indent プロパティアクセスに関するインデントを矯正するようになりました。 /*e

    ESLint v3.2.0 - Qiita
  • ESLint v3.1.0 - Qiita

    前 v3.0.0 | 次 v3.2.0 ESLint v3.1.0 released: https://t.co/F85E9yXTC9 — ESLint (@geteslint) 2016年7月15日 ESLint 3.1.0 がリリースされました。 小さな機能追加といくつかのバグ修正が行われています。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 日語 Issue 管理リポジトリ 日語サポート チャット 家リポジトリ 家サポート チャット コアへの機能追加 #3307: Lint 結果にて問題の位置を範囲指定できるようになった この機能はプラグインやカスタム ルール、およびエディタ連携ツールの開発者向けです。 従来、Lint 結果の各問題は位置情報 (行番号と列番号) を持っていました。これは CLI ツールとしては問題ないのですが、エディタ上に問題を表示する

    ESLint v3.1.0 - Qiita
  • ESLint v3.0.0 - Qiita

    互換性のない変更 #4483: Node 4 未満のバージョンのサポートを終了 Node.js v0.10 は9月末、Node.js v0.12 は12月末でメンテナンス サポートが終了します (参考: https://github.com/nodejs/LTS )。これに先立って、ESLint では v0.10 と v0.12 のサポートを終了します。 ESLint 3 がサポートするのは Node.js v4 以上のバージョンとなります。 Node.js v0.10, v0.12 で ESLint を実行する必要がある場合は ESLint 3 へのアップグレードをお控えください。 Travis CI のようなツールで複数の Node バージョンでのテストを実施する場合、同じソースコードをすべての Node バージョンで ESLint によるチェックをする必要はないかもしれません。その場

    ESLint v3.0.0 - Qiita
  • ESLint v2.11.0 - Qiita

    新しいルール #2693: no-prototype-builtins hasOwnProperty 等のプロパティのメタ情報を取得するメソッドを、メソッドとして利用すると警告するルールです。 これらは Object.create(null) と併用する場合が多く、Object.create(null) で作成したオブジェクトは一切メソッドを持っていないため、TypeError の原因になります。 /*eslint no-prototype-builtins: "error"*/ // ✔ GOOD Object.hasOwnProperty.call(obj, "prop") // ✘ BAD obj.hasOwnProperty("prop") #5502: unicode-bom eslint --fix をサポートしています。 Unicode Byte Order Mark の有無

    ESLint v2.11.0 - Qiita
  • ESLint v2.10.0 - Qiita

    /*eslint object-property-newline: "error"*/ // ✔ GOOD var obj = { foo: "foo", bar: "bar", baz: "baz" }; // ✘ BAD var obj = { foo: "foo", bar: "bar", baz: "baz" }; var obj2 = { foo: "foo", bar: "bar", baz: "baz" }; var obj3 = { foo: "foo", bar: "bar", baz: "baz" };

    ESLint v2.10.0 - Qiita
  • ESLint v2.12.0 - Qiita

    ツール体の改善 #5679: 多数のファイルを Linting するときの性能が改善された これは、先日の Google I/O で行われた 性能改善ツールの実演 (YouTube) で送られた Pull Request を元に行われた改善です。 Thanks Google! #6240: eslint:all が追加された これは、全ルールを ON にする組込み共有設定です。 新しいルールが追加される度に追加されたルールも自動的に ON になるため、"eslint:all" を利用すると minor リリースの度に CI ビルドが壊れてしまうかもしれません。そのためこの提案は棄却されていたのですが、要望が多かったために追加された次第です。 注意してご利用ください。 #6244: Semantic Versioning ポリシーが明記された ESLint は Semantic Versi

    ESLint v2.12.0 - Qiita
  • ESLint v2.9.0 - Qiita

    前 v2.8.0 | 次 v2.10.0 ESLint v2.9.0 released: https://t.co/OZkHoPbO4v — ESLint (@geteslint) 2016年4月29日 いくつかのバグ修正・ルール追加・機能改善が行われました。 特に、eslint --fixに関して大きな進展がありました。 eslint --fixの実装が改善され、すべてのルールのeslint --fixをリクエストできるようになりました (今までは空白関連ルール限定でした)。ESLint のリポジトリに Issue を作ってリクエストできます。ただ、現在の開発チームの優先度は JSCS 対応の方が高いので、PR 作ってね?と言われるとは思います。検証ルールのeslint --fix対応は簡単なので、ぜひ挑戦してみていただけると嬉しいです。 質問やバグ報告等ありましたら、お気軽にこちらまで

    ESLint v2.9.0 - Qiita
  • ESLint v2.8.0 - Qiita

    前 v2.6.0 | 次 v2.9.0 ESLint v2.8.0 released: https://t.co/DnXHJH72rF — ESLint (@geteslint) April 15, 2016 小さな機能改善といくつかのバグ修正が行われました。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 日語の Issue 管理リポジトリ: https://github.com/eslint/eslint-jp チャット: https://gitter.im/eslint/eslint-jp 今回は機能改善等よりも、JSCS チームが ESLint チームに合流したことのほうが大きなニュースですね。 Welcoming JSCS to ESLint! https://t.co/UIMmL3jsQn — ESLint (@geteslint) April 14, 20

    ESLint v2.8.0 - Qiita
  • ESLint v2.5.0 - Qiita

    前 v2.4.0 | 次 v2.6.0 ESLint v2.5.0 released: https://t.co/3nkUPb4Ndw (This is our 100th release!) — ESLint (@geteslint) March 25, 2016 記念すべき100回目のリリースです。 機能追加とバグ修正が行われました。 3つのルールと、2つのオプションが追加されました。 bundledDependencies を導入しました。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 日語の Issue 管理リポジトリ: https://github.com/eslint/eslint-jp チャット: https://gitter.im/eslint/eslint-jp #5013: bundledDependencies を利用するようになった EDIT:

    ESLint v2.5.0 - Qiita
  • ESLint v2.1.0 ~ v2.3.0 までの変更点 - Qiita

    前 v2.0.0 | 次 v2.4.0 ESLint v2.3.0 released: https://t.co/4tRvrg5UGM — ESLint (@geteslint) 2016年3月5日 v2.1.0とv2.2.0では、v2.0.0リリースに入ってしまった誤検出やクラッシュのバグ修正が行われました。v2.3.0から通常の隔週リリースに復帰しています。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 日語の Issue 管理リポジトリ: https://github.com/eslint/eslint-jp チャット: https://gitter.im/eslint/eslint-jp ピックアップ: ECMAScript 2016 (ES7) をサポートしました。 設定ファイル.eslintrcの中で、0, 1, 2の代わりに"error", "warn"

    ESLint v2.1.0 ~ v2.3.0 までの変更点 - Qiita
  • 日本語で ESLint に issue 報告ができる場所を作りました - Qiita

    @watilde さんの日語でnpmにissue報告ができる場所を作りましたに触発されて、私も同様に ESLint の日語 Issue 用リポジトリを作成しました。 最初は同じように自分のフォークを使おうと思ったのですが、Nicholas に言ってみたら日語用リポジトリを作ってくれました! ESLint に関することなら、何でもお気軽に Issue を作ってみてください。 例えば、 バグっぽい動作を見つけた こんな機能 / ルールがほしい この機能を日語で解説して欲しい ○○したいんだけど、どうすればいいの? また、Gitter.im にチャット ルームがあります。 Issue の代わりにこちらをご利用頂いてもかまいません。 オープンソース プロジェクトにとってユーザーの声は財産です。 どうぞよろしくお願いします。

    日本語で ESLint に issue 報告ができる場所を作りました - Qiita
  • ESLint v2.0.0 の変更点まとめ - Qiita

    前 - | 次 v2.1.0 The thing I'm most excited about in ESLint v2.0.0 is code path analysis: https://t.co/H9eqTpc0hF Amazing work by @mysticatea — Nicholas C. Zakas (@slicknet) 2015, 12月 12 ESLint v2.0.0 の変更点をまとめました。 前半に利用者向けの変更内容を、後半にプラグイン開発者向けの変更内容を記載しています。 単純なバグ修正は記載していません。 一覧したい場合は、右列のTOCをご利用ください。 公式情報: リリースノート 1.10.3 から 2.0.0 へのマイグレーション ガイド ピックアップ - 利用者に影響が大きそうな Breaking Changes: 削除された既存ルールのリスト ES

    ESLint v2.0.0 の変更点まとめ - Qiita
  • ESLint のカスタムルールを作ろう! (その1) - Qiita

    はじめに ESLint の魅力の1つに、自分のプロダクトに合わせた独自ルールを作成することができるという点があります。 これから数回に分けて独自ルールの作り方・使い方を解析していきます。 この記事では、簡単なルールを作りながら、ESLint のルールの基的な仕組みを解説します。 ここでは ESLint の基的な使い方は扱いません。 ESLint の基についてはESLint 最初の一歩等を御覧ください。 no-literal-call この記事では、最初の目標としてリテラルを関数呼び出ししている場合に警告するルールを作っていきます。 その過程で必要な知識を解説していくつもりです。 今回題材にするソースコードはこちら。 これは有効な JavaScript コードですが、実行すると必ず TypeError になります。 文字列を関数呼び出ししているので、当然ですね。 しかし ESLint

    ESLint のカスタムルールを作ろう! (その1) - Qiita