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

Plug-in system #959

Closed
2 tasks
fabiopelosin opened this issue Apr 10, 2013 · 3 comments
Closed
2 tasks

Plug-in system #959

fabiopelosin opened this issue Apr 10, 2013 · 3 comments
Labels
t1:enhancement Enhancements that have not been picked up yet. Please comment if you plan to work on it

Comments

@fabiopelosin
Copy link
Member

CocoaPods should have a plugin system which would allow to:

  • Add additional sub commands.
    • The available gems should be inspected and the ones matching a given name should be required automatically in the Pod::Command.
    • A suitable name pattern could be cocoapods-#{NAME}-plugin.
    • I'm not sure about what would be the best way to introspect the available gems.
    • By simply requiring them the command will be registered by CLAide (already implemented).
    • The plug-ins should be loaded after the base commands are loaded so they can participate in the chain. Like having a subcommand like pod spec github-create URL.
  • Hook in other places like the statistics generation process.
    • This is done to remove the big dependency on octokit and making the GitHub stats available only to those with the gem of the plug-in installed.
@fabiopelosin
Copy link
Member Author

I'm closing this one for the time being, as there isn't a lot of demand for additional subcommands.

jzapater pushed a commit to jzapater/CocoaPods that referenced this issue Sep 17, 2013
@alloy
Copy link
Member

alloy commented Nov 6, 2013

@irrationalfab Now that CocoaPods/CLAide#1 is in, someone could start on moving the statistics out, however as we no longer have the octokit dependency I wonder if that’s worth it?

@fabiopelosin
Copy link
Member Author

Indeed the statistics could be moved out, however I would prefer to document how those plugins should integrate with the internals of CocoaPods. They are loaded early on so overriding methods should work (although we could provide some hook points).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
t1:enhancement Enhancements that have not been picked up yet. Please comment if you plan to work on it
Projects
None yet
Development

No branches or pull requests

2 participants