Profiles and "disabled plugins"

Vladimir Prus ghost at cs.msu.su
Sat Oct 21 07:57:50 UTC 2006


On Saturday 21 October 2006 01:42, Jens Dagerbo wrote:
> On Friday 20 October 2006 20:14, Vladimir Prus wrote:
> > Hi,
> > for quite some time, it was possible to specify a set of disabled plugins
> > for a given KDevelop profile. This no longer works in SVN head. This was
> > changed in revision r525148, by Jens. Log message was:
> >
> >      r525148 | dagerbo | 2006-04-01 02:46:23 +0400 (Sat, 01 Apr 2006) | 1
> > line
> >
> >      Use Alexander Dymo's ProfileEngine to specify the default plugin set
> > for a freshly created or imported project
> >
> > and the actual diff is attached. The only functional change is commenting
> > out the code that handles disabled plugins, with comment that says:
> >
> >        /* Wrong, this is not what we want to do.
> >
> >
> > Jens, can you tell what was wrong with original behaviour,
>
> There was nothing wrong with the original behaviour (except maybe that it
> was somewhat redundant) UNTIL people started using the disable list to
> "clean up the ui" which wasn't at all what it was designed to do.
>
> The enable list tells Develop that a plugin CAN be loaded.
> The disable list _told_ KDevelop that a plugin CANNOT be loaded.
>
> In effect a disabled plugin was blocked and for all practical purposes did
> not exist (for that profile). Using this system  to "clean up the ui"meant
> you limited what parts of KDevelop the user was allowed to use by your
> preference of what was nice to see in the UI.

If "disabled plugin" functionality permanently disabled some plugins from 
being used, and that's not desirable, would a reasonable fix be to change the 
semantics of "disabled plugin" -- so that it not available initially, but 
still can be explicitly disabled by the user?

As it stands now, we have "dead" functionality in the plugin engine and in 
kdevprofileeditor as well.

> The current behaviour is, imho, the better way. And at least back in april,
> when I changed the behaviour, Alexander Dymo agreed with me. I hope he
> still does. :)
>
> > and what's  required in order to revive the disabled plugins
> > functionality?
>
> As a project template writer, to impose your preference as to what should
> be loaded by default - use the "<ignoreparts>" section of the
> template's .kdevelop file.

I have more than one template that uses the same profile. Duplicating the list 
of disabled plugins in each seems quite inconvenient. What's worse -- if you 
already have project created with certain profile, when you upgrade to 
current version of KDevelop, all disabled plugins will magically appear. 
Having two debugger plugins show up is not very nice ;-)

- Volodya




More information about the KDevelop-devel mailing list