はじめに
どうも、ikasumi1503です。KotlinのリンターシリーズのSlack Compose Lint編です。JetpackComposeプロジェクトでリンター設定をしていきたい場面は多いかと思います。そこで、本記事ではSlack社が提供しているCompose Lintの簡単な設定方法をまとめていこうと思います。
導入方法
導入方法を次の順で紹介していこうかと思います。
- Slack Compose Lintを手動&自動で実行する
- Github actions連携
1. Slack Compose Lintを手動&自動で実行する
プロジェクトのbuild.gradle.ktsを開きましょう。見つからないという方はshiftキーを2回押してなんでも検索によってこのファイルを見つけ出しましょう。
// プロジェクト構成:
your-project/
├─ build.gradle.kts ← ×
├─ settings.gradle.kts
├─ app/
│ └─ build.gradle.kts ← 〇ここです
見つけたら、早速プラグインを入れます。
build.gradle.kts
dependencies {
lintChecks("com.slack.lint.compose:compose-lint-checks:1.4.2")
}
これで右上に出ているSync nowをクリックすると、設定が適用されます。以上でセットアップは完了です。簡単ですね。ルートディレクトリで./gradlew lint
コマンドを実行して無事警告が表示されたら設定は完了です。
2. Github actions連携
PR時にComposeLintで検知されるとエラー内容をまとめたファイルを作成するようにします。
プロジェクトの.github/workflows
にymlファイルを入れていきます。
ファイル内容は長いので次のレポジトリ内に入れています。あくまで例としてAIに吐き出させたものを使っています。一応私の環境では動作確認済みです。
https://github.com/ikasumi1503/KtlintSample
slackCompose_reviewdog_example.yml
... 一応reviewdogバージョンも出しておきます。プルリクエストしたら警告内容をPRコメントにばらまきます。
以上のファイルがmainブランチにないと機能しない点にご注意ください。
さいごに
以上がSlack Compose Lintの簡単な設定方法です。ぜひ試してみてください。