FLIMKit

Plugins / FLIMKit / Plugin Troubleshooting · edit on GitHub

Plugin Troubleshooting

Start with Help > Plugins... (Checking what loaded) and the Progress log. Between them they say whether a plugin was found, whether it imported, and whether its startup ran.

It is not in the list at all

It is listed as failed

The line in Help > Plugins... gives the exception. The usual ones:

Message Cause
ModuleNotFoundError A dependency is missing from FLIMKit's environment, or from the compiled app, which cannot fetch it
declares FLIMKIT_PLUGIN_API ... The plugin was written for another plugin API. Update the plugin, or FLIMKit
... already registered by ... Two plugins use the same id. The first one loaded keeps it, and the error names it
unknown panel A @panel_button asked for a panel other than 'roi'

A failed plugin has its registrations rolled back, and the others still load.

It loaded, but its startup failed

Startup callbacks run after loading, so a failure there does not show in Help > Plugins.... Look in the Progress log for a line like

[Plugin] startup web_ui (flimkit.plugins:flimkit_web_ui) raised OSError: [Errno 48] Address already in use

That one is a port clash: web UI 0.1.0 used 8765, the bridge's port. Update the web UI, which now defaults to 8766 and moves to a free port if that is taken, or give it a port in ~/.flimkit/config.json (Port and password). A clash on a port you set yourself is still reported this way, on purpose.

It fails when you use it

A plugin that raises in a menu entry or a button gets a message box naming the plugin and the error, and FLIMKit carries on (A fuller example). An error from a window the plugin opened itself goes to the error log. Help > View Error Logs shows the current session with the full traceback, including the file and line in the plugin:

Error log with a plugin traceback

Help > Export Error Logs saves the same report to send with a bug report.

The bridge

Other add-ons

Reporting a problem

Include the Help > Plugins... list, the Progress log from startup, and the exported error log. Start once with python main.py --no-plugins too: if the problem goes away, it is in a plugin rather than in FLIMKit.