Hi, Since 1.8 there is this great plugin module, I m really interested to take advantage of it.
But several questions rises when I think of it, dumping them here and hope to get some feedback Not starting by the deployment, I first wonder about their storage and organization on the end user system. - should they all exists within a common directory set on PATH (a bit like lib/ on linux ?) - should they exists within a per application directory ? - last case might not be suitable for go get, as it will only replace the bin in place, it will leave some existing plugins for an older version of the program. - Will plugin requires additional files on the end user system ? (in which case the plugin must be a sort of archive and not just only a .plugin file) Then i wonder about the compatibility check, - How to check that given file, is a go plugin of the plugin i want in the desired version. - What if a plugin is compatible (let s say) 1.8, but not 1.8.1 (any reasons) ? - How to load a bad plugin without crashing the app ? - Should a plugin be delivered with a sorts of manifest to tell more about all the requirements and compatibility of the plugin ? - What about a possible configuration file related to the plugin and its life cycle. Next are some questions about loading of a plugin, - should it go through some sort of standalone binary (like a go generate/go get, but for plugins) that would be able to load, store a plugin file for a given application ? Leaving all the rest of the job to locate, load, check ect to the application. - Or should the plugin management be provided via a small api that would take care of locating, downloading (in case of remote repo), checking, loading the plugin on the runtime ? Should it take care of plugin reloading too ? Also, i d like to ask if it is reasonable for future to assume that, - plugin will work for all go supported platforms ? - plugin will be able to unload/reload plugins ? Thanks for reading! -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.