anaconda-project icon indicating copy to clipboard operation
anaconda-project copied to clipboard

"Command type" plugins

Open havocp opened this issue 7 years ago • 6 comments

The goal here would be to factor out the specific knowledge of Bokeh and notebooks in the code already, replacing them with plugins that can be extended by third parties as well. We could make this the first "plugin type" in a general plugin system (the idea would be that a plugin can implement 1-N interfaces/features, such as "new command type").

havocp avatar Mar 06 '17 16:03 havocp

A tricky requirement we've come up with here is that we really want the plugin code to run in one of the project's environments, not in anaconda-project's environment. So that may involve for example making plugins be a child process.

havocp avatar May 12 '17 14:05 havocp

Implementation complexity: currently we use notebook/boken-specific knowledge before we "prepare" (create environments). This means if plugins are in those environments we create, something will have to change.

havocp avatar May 15 '17 16:05 havocp

@havocp do you think we must nail both (plugin in the anaconda-project environment and plugin in the created env) at a first pass (due to anaconda-project implementation defails)? If not we may start doing it at the anaconda-project env first and add the created env in a second pass...

fpliger avatar May 18 '17 17:05 fpliger

I don't think we'd want two ways to write plugins, we should do it the way we want to keep. Currently lean toward putting plugins in the anaconda-project process/environment because putting them in the child environment doesn't seem all that feasible when I try to work out the details.

havocp avatar May 18 '17 18:05 havocp

👍 if you already have an idea of how you see the plugin system and where/how to add hooks in the anaconda-project code, I'd be happy to help implementing it (if you need, of course 😄 )

fpliger avatar May 18 '17 18:05 fpliger

I'll work on writing up some specs/discussion-docs.

havocp avatar May 22 '17 18:05 havocp