Search code examples
xcodeswift-package-managerswiftlintapollo-ios

SwiftLint config in dependency source conflicts with SwiftLint in main project


I have a project that uses SwiftLint and Swift Package Manager. One of the packages I'm pulling in (Apollo) is in turn pulling in another framework (Stencil). That framework (Stencil) has a swiftlint.yml file in its source with a specific swiftlint_version set.

When I attempt to build my project, my SwiftLint is failing because the swiftlint_version specified in Stencil's source is being honoured and is different to what I have installed (I have a more recent version installed).

Do I have my project set up incorrectly to use SwiftLint? All I have is the yml file in my source and SwiftLint installed via Homebrew, then my project runs SwiftLint via a script in the build phases.


Solution

  • Well I realised what I was doing wrong just after posting the question.

    I had to add the Codegen path created as part of the Apollo setup process into the excluded list in my swiftlint.yml file.