Bug report #14193
Plugin Manager incorrectly unloads plugins which depends on other plugins
|Affected QGIS version:||master||Regression?:||No|
|Operating System:||all||Easy fix?:||No|
|Pull Request or Patch supplied:||No||Resolution:||end of life|
|Crashes QGIS or corrupts data:||No||Copied to github as #:||22195|
There are plugins which depends on other plugins, e.g. Processing provider plugins needs Processing plugin. Plugin Manager incorrectly handles this case. It seems that plugin unloading does not take in account dependencies between plugins, unload happens in alphabetical order. As result, during unload Processing plugin unloaded, while other plugins that import its modules still there. This may cause hangs or crashes depending on user actions.
Processing should be unloaded only after unloading all its provider plugins, or maybe unloaded in the end. This may also affect other cases when one plugin imports packages from another.
See also discussion at GitHub
#1 Updated by Martin Dobias about 4 years ago
The real issue is that it currently is impossible to define dependencies for python plugins (either on "usual" python modules or on other python plugins). With dependencies specified, loading/unloading and installation/removal of plugins would work much better.
#3 Updated by Giovanni Manghi 11 months ago
- Resolution set to end of life
- Status changed from Open to Closed
End of life notice: QGIS 2.18 LTR