Summary: `activatePlugin` events where not recorded correctly for Sandy plugins. Although the starting measuerments is fired the `connections` reducer, the completing event fires from `PluginContainer`. Since this is done as part of a ref-update (!!), see [here](https://www.internalfb.com/intern/diffusion/FBS/browse/master/xplat/sonar/desktop/app/src/PluginContainer.tsx?commit=65a625ea9941&lines=155), and the ref to the corresponding element is not set for Sandy plugins, the event was never marked as completed. Fixed this by making it part of the `activate` life-cycle event of Sandy plugins. Reviewed By: passy Differential Revision: D25421537 fbshipit-source-id: 5cbfeb91cc12e4520fa271bab24034094d7ddb39
flipper-plugin
flipper-plugin is the dependency used by all modern Flipper plugins (project "Tommy").
For background: https://fb.quip.com/YHOGAnaPqAVJ
flipper-plugin is to be used as dev and peer dependency of all Flipper plugins. It provides:
- (TODO) Standard API's to interact with Flipper, such as the client connection.
- (TODO) Standard components to organize the UI
- (TODO) Testing utilities
API's provided by flipper-plugin are documented at fbflipper.com (TODO).
There should normally be no need to install flipper-plugin as dependency.
Rather, plugins should be scaffolded using npx flipper-pkg init (TODO) as documented here