Bases: object
Use this function if you always want the same instance: If plugin has never been called, create a new instance else return first created one.
Return all existing instances corresponding to this plugin
Create a new instance and register it. You can get all created instances with instances method.
Add a weakref to instance in dict group -> name -> [list of instances]
Add plugin information to given exception. By default, if a plugin fails, for example because a dependency cannot be imported, user get error message "ImportError: No module named mydep". This message is useless because we don't know which plugin has failed.
Once enhanced, error message become: "MyLab (mypackage.lab.mylab): ImportError: No module named mydep"
kwds:
- plugin: plugin instance
- plugin_class: plugin class