Introducing: Plugins
TL;DR: gpm has plugins now, plugins are cool. :)
As can be seen in my ramblings on this pull request there always are certain features which I want to add to gpm but which are not a good tradeoff in regards to functionality/complexity, or do not strictly fall into gpm's responsibility.
That will stop being a problem from now on by introducing gpm plugins, their way they work is pretty simple: if you give an unknown command to gpm it will look for an executable called gpm-<command>
in your path and execute that if present, passing along all arguments. The change was suggested by @foca, @inkel and @soveran to whom I extend my thanks ^_^.
The first released plugin is gpm-bootstrap which takes a look at your Go project, installs all required dependencies setting them to their last release or revision and saves the versions to a Godeps file. Versioning the dependencies of your Go projects has never been easier.
You can read more about plugins in the documentation.
For homebrew users:
I will keep up-to-date homebrew formulae for all plugins I'm aware of in this repository.
You can access this formulae with the following command:
$ brew tap pote/gpm_plugins
After this you can just install them as you would any other package
$ brew install gpm-bootstrap
Plugin Example: gpm bootstrap
Looking forward to seeing new plugins pop up! 📦 🎆