---
# System prepended metadata

title: Meeting Minute 2021-09-07
tags: [plugin, working-group]

---

Meeting Minute 2021-09-07
===

###### tags: `working-group` `plugin`

:::info
- **Date:** 2021-09-07
- **Agenda**
    - Review [last week](https://hackmd.io/YihnEVqrSkudjAeLJw0aeA)
    - npe2 integration
    - expressions
    - i18n, translation
    - file format spec/reader design
- **Participants:**
    - Nathan Clack, Talley Lambert, Matthias Bussonnier, Eric Perlman




:::

<!-- Discussion goes here-->

## Next steps
<!-- Action items go here -->

## Notes 
<!-- Other important details discussed during the meeting can be entered here. -->

Eric - state of plugin developer docs
- what to do when I want to add a gui. many options? which one

Reader configuration
some of this has to do with fast evolution over time
- AICS non-lazy vs lazy loader

ImageJ import breaks w drag and drop - has to use defaults

How would you do a dynamic widget w MagicGui?
The layout is a mutable sequence, so you just append.
- https://napari.org/magicgui/usage/direct_api.html

The key is that magic gui decorator create instance, and factory create a class. 

There is some historical reasons to make JNI happy. Users could be just doing a subclass.


HOw to we get NPE2 in napri: 
  - let's to try import/except and have code in the main napari branch. 
  - Not on PyPI, and jsut leave that as manual install for now. 
  - Talley will turn the POC into a PR. 
      - Cleanup anf move to test-plugin
      - Figuring out where plugin can add menus where.
      - Tests.
  - Where are the plugins docs. 
      - Sphinx autodoc.

  - Maybe have extensions samples.
  - do we agree on the nameing `manifest.toml`? Yes.
  - 
### Expressions
Expressions:
- vscode when clause
    - napari issue #3350
    - context keys are the terminal symbols in the expressions
    - idea is napari would expose some 'isInViewer && isLayerActive'
    - plugins could define/maintain their own context keys
    
https://greentreesnakes.readthedocs.io/en/latest/ is better for AST doc.


- like vs code, but Python syntax. 
- Shoudl manifest declare that plugin can define a context key.
    
- [x] 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)