ローカル開発
typescript-eslintの開発にご興味をお持ちいただきありがとうございます! ❤️🔥
一般的なコントリビューションの流れについては、コントリビューティングとIssueをご覧ください。
セットアップ
GitHubからリポジトリをフォークし、Yarnをインストールした後
git clone https://github.com/<your-name-here>/typescript-eslint
cd typescript-eslint
yarn
ルートのpackage.json
にあるpackageManager
フィールドを確認することで、使用しているyarn
のバージョンを確認できます。
インストール後スクリプトは、(yarn build
)を使用してリポジトリをローカルに完全にビルドします。これで開発の準備が整いました! 🚀
ビルド
ルートでyarn build
を実行するとすべてのパッケージをビルドできます。また、任意のパッケージで実行すると、そのパッケージのみをビルドできます。
パッケージは一般的に互いのビルド出力に依存しているため、ローカルの変更をコンシューマーに反映するには、依存関係をyarn build
する必要があります。たとえば、scope-manager
内で変更を行い、それをeslint-plugin
で使用したい場合は、ルートまたはpackages/scope-manager
内でyarn build
を実行する必要があります。
変更の検証
以下のチェックはすべてプルリクエストで自動的に実行されます。ローカルでも実行できます。
プルリクエストの詳細については、コントリビューティング > プルリクエストをご覧ください。
フォーマット
コードの自動フォーマットにはPrettierを使用しています。Gitのpre-commitフックは、コミットされたすべての変更に適用されます。または、任意のパッケージまたはルートでyarn format
を実行することもできます。
リンティング
すべてのコード変更はESLintに合格する必要があります。任意のパッケージまたはルートでyarn lint
を実行できます。
プルーフリーディング
変更は、ドキュメントと命名に関する2つのリンターに合格する必要があります。コマンドはルートから実行できます。
yarn check-spelling
: CSpell、すべてのコード用yarn lint-markdown
: Markdownlint、Markdownドキュメント用
テスト
すべてのコード変更は、可能であれば理想的にはユニットテストする必要があります。任意のパッケージでyarn test
を実行してテストを実行できます。
VS Code起動タスクタスクが提供されており、ビジュアルデバッグテストが可能です。
型チェック
すべてのコードはTypeScriptの型チェックに合格する必要があります。任意のパッケージまたはルートでyarn typecheck
を実行してtsc
を実行できます。
yarn typecheck -w
を実行して、ウォッチモードでtsc
を起動します。
ルール開発
このリポジトリの一部は、ルールファイルから読み取るスクリプトを手動で実行することによって生成されます。ルールを変更した場合は、以下のいずれかまたは両方を実行する必要がある場合があります。
- ルートから
yarn generate-configs
を実行する: 共有設定を再生成する packages/eslint-plugin
からyarn test docs -u
を実行する: ルールドキュメントとオプションに基づいてスナップショットを再生成する
ウェブサイト開発
インタラクティブなドキュメントウェブサイトはDocusaurusを使用して構築されています。ルートまたはpackages/website
からyarn start
を実行すると、localhost:3000
でローカル開発サーバーが起動します。
website
パッケージは、他のパッケージがビルドされていることに依存しています。yarn start
の前に、ルートからyarn build
を実行することをお勧めします。