Meeting Minute 2021-01-26 === ###### tags: `working-group` `plugin` :::info - **Date:** 2021-01-26 - **Agenda** - [last week](https://hackmd.io/5EFaLRNlTxuF6tnYT1EQMw) - switch cookiecutter main to npe2 - enable/disable,install/uninstall - npe1 shim [npe2#86] - multiple paths to readers [npe2#87](https://github.com/napari/npe2/pull/87) - **Participants:** - Matthias Bussonnier - Nathan Clack - Eric Perlman - Pam Wadhwa - Grzegorz Bokota - Talley Lambert ::: * would like to tie enable/disable into [npe2#86] * shim rough edges * can't bind to local closures * shim creates a morphism of the function generating name to encode the index. `def gen_hooks() => di: gen_hooks__npe1_shim_1` gets the function returned at index 1. * converted manifests are cached * [Grzegorz] editable mode npe1 plugin via shim? * caching is a problem for editable installs * editable mode is detectable * avoid cache in that case * Talley demoing * napari loads faster! * [Matthias] what should invalidate the cache? * can use site packages metadata * look for package_version * don't cache if alpha or beta * uninstall will leave the cache artifact * could clean on napari directed uninstall * add a clear cache command * think about timestamp * check consistency when the plugin is actually loaded * if any errors occur invalidate cache - make this optional in napari prefs, disabled by default, opt in for * eventing * use psygnal to emit events from PluginManager <!-- Discussion goes here--> ## Next steps <!-- Action items go here --> ## Notes <!-- Other important details discussed during the meeting can be entered here. --> - [ ] After the meeting add the minutes to the 'working-group/plugins' folder of [napari/meeting-notes](https://github.com/napari/meeting-notes). ## Links * [Calendar](https://calendar.google.com/calendar/u/0?cid=Y18zNXI5M2VjNnZ0cDhzbWhtN2R2NXVvdDB2NEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t) * [HackMD space](https://hackmd.io/team/napari-wg-plugin) * [Recorded meeting notes](https://github.com/napari/meeting-notes/tree/master/2021/working-groups/plugins) [npe2#86]: https://github.com/napari/npe2/pull/86