Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add plugin feature #50

Merged
merged 8 commits into from
Aug 13, 2018
Merged

Add plugin feature #50

merged 8 commits into from
Aug 13, 2018

Conversation

kateinoigakukun
Copy link
Collaborator

@kateinoigakukun kateinoigakukun commented May 26, 2018

You can create external plugins in IBLinterFile.swift

import IBLinter
import IBLinterKit

struct FooRule: Rule { /*...*/ }

let linter = IBLinter()
linter.run(externalRules: [FooRule.self])
  • IBLinterFile.swift executor
  • Build cache manager
  • Remote plugin
  • Edit IBLinterFile.swift in Xcode

How this works

Build libIBLinterKit.dylib and execute
swift -L /usr/local/lib/iblinter -I /usr/local/lib/iblinter -lIBLinterKit ./IBLinterFile.swift in CLI iblinter

Like this https://github.com/danger/danger-swift

@kateinoigakukun kateinoigakukun force-pushed the feature/plugin branch 3 times, most recently from 6ce75b7 to 0a3d351 Compare August 13, 2018 13:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant