SwiftLintPlugin
A Swift Package Plugin for SwiftLint that will run SwiftLint on build time and show errors & warnings in Xcode.
⚠️ There now is an official version in the SwiftLint repo!
Add to Package
First add a dependency from this package:
dependencies: [
// ...
.package(url: "https://github.com/lukepistrol/SwiftLintPlugin", from: "0.2.2"),
]
Then add it to your targets as a plugin:
targets: [
.target(
name: "YOUR_TARGET",
dependencies: [],
plugins: [
.plugin(name: "SwiftLint", package: "SwiftLintPlugin")
]
),
]
Add to Project
Starting with Xcode 14, plugins can also work on Xcode Project’s targets. To do so, simply add this package to your SPM dependencies in Xcode. After that open your target's settings > Build Phases
and add SwiftLint
to Run Build Tool Plug-ins
like shown below:
You may need to enable & trust the plugin before you can actually run it during builds.
Fix Warnings
As of version 0.1.0
this package also includes a command plugin which can be called on any target.
- Select a project or package in the project navigator.
- Richt-click and select
SwiftLintFix
.
- alternatively you can select
File > Packages > SwiftLintFix
.
- Choose the target(s) to run the
swiftlint --fix
command on.
Run on CI
Important to notice is that when building a package/project on any CI provider (e.g. GitHub Actions) it is mandatory to pass the -skipPackagePluginValidation
flag to the xcodebuild
command. This will skip the validation prompt which in Xcode looks like this:
Example
xcodebuild \
-scheme "$SCHEME" \
-destination "$PLATFORM" \
-skipPackagePluginValidation \ # this is mandatory
clean build

SwiftLintPlugin
A Swift Package Plugin for SwiftLint that will run SwiftLint on build time and show errors & warnings in Xcode.
Add to Package
First add a dependency from this package:
Then add it to your targets as a plugin:
Add to Project
Starting with Xcode 14, plugins can also work on Xcode Project’s targets. To do so, simply add this package to your SPM dependencies in Xcode. After that open your
target's settings > Build Phases
and addSwiftLint
toRun Build Tool Plug-ins
like shown below:Fix Warnings
As of version
0.1.0
this package also includes a command plugin which can be called on any target.SwiftLintFix
.File > Packages > SwiftLintFix
.swiftlint --fix
command on.Run on CI
Important to notice is that when building a package/project on any CI provider (e.g. GitHub Actions) it is mandatory to pass the
-skipPackagePluginValidation
flag to thexcodebuild
command. This will skip the validation prompt which in Xcode looks like this:Example