napari / napari-core

BSD 3-Clause "New" or "Revised" License
5 stars 3 forks source link

Plugin management system #3

Closed jni closed 5 years ago

jni commented 6 years ago
kne42 commented 6 years ago

I assume that we will also be creating our own environment then?

jni commented 6 years ago

@kne42 Ah yes, this is a good point. And an interesting one. I think separate environments will be tricky to manage. You'd have to do inter-process communication, and plugins would be second-class citizens, because you couldn't match the performance of running in the "app" environment. Perhaps we should explicitly say which packages we are shipping with the app, and plugins can add packages but only if they don't conflict with the base ones, in the conda-forge sense of "conflict".

royerloic commented 6 years ago

For now we have to define a basic but relatively exhaustive set of dependencies that would cover 90% of needs. Late on, we can figure out a way for plugins to play well together. This has not been solved in FiJi for example.

On 4. Jun 2018, at 23:12, Juan Nunez-Iglesias notifications@github.com wrote:

@kne42 https://github.com/kne42 Ah yes, this is a good point. And an interesting one. I think separate environments will be tricky to manage. You'd have to do inter-process communication, and plugins would be second-class citizens, because you couldn't match the performance of running in the "app" environment. Perhaps we should explicitly say which packages we are shipping with the app, and plugins can add packages but only if they don't conflict with the base ones, in the conda-forge sense of "conflict".

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Napari/napari/issues/3#issuecomment-394593441, or mute the thread https://github.com/notifications/unsubscribe-auth/AByMknqOfxKUq5cIp780yqOObdd6jrJNks5t5iFZgaJpZM4UYKpd.

royerloic commented 6 years ago

We can use the GitPython lib: http://gitpython.readthedocs.io/en/stable/index.html

Here is an example how to pull: https://stackoverflow.com/questions/20073873/how-to-checkout-a-tag-with-gitpython

kne42 commented 6 years ago

Thanks for the pointers! I'll get started on this now :P

kne42 commented 5 years ago

I think we should create a cookiecutter for plugins similar to what Jupyter has set up.

royerloic commented 5 years ago

Great idea!