Bug report #14193

Plugin Manager incorrectly unloads plugins which depends on other plugins

Added by Alexander Bruy about 4 years ago. Updated about 1 year ago.

Status:Closed
Priority:Normal
Assignee:Borys Jurgiel
Category:Plugin Manager
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

Description

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

History

#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.

#2 Updated by Giovanni Manghi almost 3 years ago

  • Easy fix? set to No
  • Regression? set to No

#3 Updated by Giovanni Manghi about 1 year ago

  • Resolution set to end of life
  • Status changed from Open to Closed

Also available in: Atom PDF