---
# System prepended metadata

title: Meeting Minute 2021-01-26
tags: [plugin, working-group]

---

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