🔗
[備忘録]個人制作アプリにSwiftLintを導入した話
今回は、現在参加しているCA-TechAccelでSwiftLintを導入したので備忘録的に書き残したいと思います。
SwiftLintとは?
簡単にいうと、静的解析が可能になるツールでスペースのズレなどをみてくれるとってもありがたい
ヤツです。
実際に導入していく
Homebrewを使用しているのでそちらに合わせて導入していきます。
1:ローカルにSwiftLintをインストール
$ brew install swiftlint
2:Xcodeを開いて採用したいプロジェクトを選択
3:PROJECT, TARGETSと並んでるうちのTARGETS のプロジェクト名を選択
4:Build Phasesを選択
+
マークを選択して New Run Script Phase
5:6:以下のコードを中に記述
// パスを記載
export PATH="$PATH:/opt/homebrew/bin"
if which swiftlint > /dev/null; then
swiftlint
swiftlint autocorrect
else
echo "warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint"
fi
7:User Script SandboxingをNoに変更
Xcode15からこのデフォルトがYesに変わっているようなのでここをNoに変更してください。
8:どのルールを適用させるかの設定
ルートディレクトリに.swiftLint.yml
を作成し、その中に採用するルールなどを書き込む
# Lintを適用させる対象を指定
included:
- Tech_Accel_P/
# Lintの適用対象から外す
excluded:
- 自身のプロジェクトのテスト/
# 無効にするルール
disabled_rules:
- file_length
- trailing_comma
- trailing_whitespace
- trailing_newline
- vertical_whitespace
- function_body_length
- type_body_length
- line_length
- vertical_parameter_alignment
type_name:
excluded:
- lowerCamelClass
これでbuildもしくはswiftlint
で正常に動作するはずです!
今日はここまで!
Discussion