IBDecodable / IBLinter

A linter tool for Interface Builder
MIT License
950 stars 41 forks source link

Swift Package Manager Plugin #188

Open briancordanyoung opened 1 year ago

briancordanyoung commented 1 year ago

I don't see a Swift Package Manager Plugin to run IBLinter like there is now for SwiftLint and SwiftGen. I'd like to get this working for my project. Before I start on this in a couple days, has anyone already attempted it or in progress?

I would implement is as a PR to IBLinter adding directly to the existing Package.swift as done in the SwiftLint project. If you would prefer a separate project as done for SwiftGen I'd be happy to discuss the goals.

kateinoigakukun commented 1 year ago

I don't mind either way for just having a plugin. However, considering the use of .binaryTarget for the plugin to save build-time, I prefer a separate repo under IBDecodable org because binaryTarget declaration in IBLinter's Package.swift would complicate the release process as discussed in the SwiftLint PR.

If you made a repo and we confirmed the plugin works, you can transfer it to IBDecodable org (of course if you'd like)

briancordanyoung commented 1 year ago

OK. great. I'm glad I asked.

After reviewing that thread and the SwiftGen project, it does look like building this in a separate repo is the way to go for now, giving flexibility for either way to distribute it. I'd be happy for the project to transfer later.

I may not get to it as quickly as I expected, but hope to in the coming week.