I had a thought,as I sit here pulling up 1.1.1(finally), is there a
reason we have so many plugins enabled by default? I'm not even sure
anyone knows how to use most of the ones that are enabled. AND, as
they're plugins, they shouldn't be on or enabled unless they're
actually needed.
I propose a space: XWikiPluginGuide.
Each plugin would have a page in the guide describing: a) how to
enable the plugin, b) what options are used by the plugin, c) how to
invoke and use the plugin, and optionally d) who wrote the plugin and
the version information (which that document could retrieve via a
getVersion, getAuthor, or whatever call back to the plugin).
A lot of plugins have a place where they check to make sure that
document artifacts that they need exist. One of the things they would
check is if "PluginGuide.pluginname" exists, where pluginname is what
they return in response to getName(). If "PluginGuide.pluginname"
doesn't exist, they'll create one, setting the title, etc. They
*could*, in theory, either add a field to that document or use the
document's inherent version to decide whether or not the document
should be all out replaced at some later point, so that when the
plugin is updated/loaded, the page is updated.
The plugin code itself is the repository of all knowledge as far as
what xwiki properties it understands, how the methods should be
invoked, etc. That way, if I want to know how to use the feed plugin,
I can just go to PluginGuide.feed, and find out.
THEN...
Since we have options documented in the plugin guide, we can remove
blocks like this from xwiki.cfg:
# To enable it, add "com.xpn.xwiki.plugin.graphviz.GraphVizPlugin" to
the list of plugins
# in the xwiki.plugins property.
# Uncomment and set the locations of the Dot and Neato executables
#xwiki.plugin.graphviz.dotpath=c:/Program Files/ATT/GraphViz/bin/dot.exe
#xwiki.plugin.graphviz.neatopath=c:/Program Files/ATT/GraphViz/bin/neato.exe
Same with lazlo, captcha, LDAP, etc. Anything that can be turned off
should be removed from xwiki.cfg w/ appropriate PluginGuide docs
describing how to turn it back on.
If we *can't* turn it off, meaning that the default skin needs it,
then we should note that, eh? I think the calendar plugin, for
example, is used by more than just the EventCalendar pages (though I
forget exactly where at the moment.. but it's in the code, not in the
templates).
If the plugins become too central to wiki function, like the Packager
plugin, for instance.. it isn't a plugin anymore, and shouldn't be in
the xwiki.plugins list in xwiki.cfg.
To steal an acronym from Vincent, WDYT?
:-P
--
'Waste of a good apple' -Samwise Gamgee