"optional" plugin dependencies

18 views
Skip to first unread message

Jay Howard

unread,
May 2, 2016, 9:08:55 PM5/2/16
to Jenkins Users
I recently updated to Jenkins 2.1 and removed a few of the "built-in" plugins we never use that were impossible to remove in earlier versions of Jenkins.  However, I'm finding myself unable to certain others because they're listed as "optional" dependencies of other plugins.

Am I wrong to assume that if plugin A has an "optional" dependency on plugin "B" that "A" being installed shouldn't block the removal of "B"?

For instance, I'd like to remove the Subversion plugin but I'm blocked because the Parameterized Trigger plugin has an "optional" dependency on it.

Also, a surprisingly large number of plugins seem to depend on on the "Windows Slaves" plugin that have nothing to do with Windows.

What am I missing?

Daniel Beck

unread,
May 3, 2016, 4:23:27 AM5/3/16
to jenkins...@googlegroups.com

> On 03.05.2016, at 03:08, Jay Howard <jay.patri...@gmail.com> wrote:
>
> For instance, I'd like to remove the Subversion plugin but I'm blocked because the Parameterized Trigger plugin has an "optional" dependency on it.

A known limitation of the current UI.

> Also, a surprisingly large number of plugins seem to depend on on the "Windows Slaves" plugin that have nothing to do with Windows.

Windows Slaves used to be part of core, then its functionality was moved to a plugin in 1.547. The problem is, we don't know whether a plugin built against 1.546 or earlier uses its features, so Jenkins treats those as having a dependency on the 'detached' plugin. Not doing this may break plugins with cryptic error messages.

There is currently no way to work around this other than change all plugins built against an older Jenkins release to build against 1.547+ so they need to declare an explicit dependency if they use the plugin's features.

Note that you may decide to be clever and just delete the Windows Slaves plugin from disk. Don't do that. If it doesn't already cause breakage today, there's a change coming soon that would definitely make all plugins with dependencies fail to load on startup.

Jay Howard

unread,
May 3, 2016, 9:13:30 AM5/3/16
to jenkins...@googlegroups.com
Thanks for the response Daniel.  I'll just leave them all installed.  Was just trying to clean up some (seemingly superfluous) clutter.

If I could suggest one UI change:  Give users a way to hide/show plugins that can't be removed or disabled because they're dependencies.  Basically, provide a view of installed plugins that only includes those that can be "operated on".


--
You received this message because you are subscribed to a topic in the Google Groups "Jenkins Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jenkinsci-users/pHqvJSIoIyQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jenkinsci-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/5A151AFA-54E0-48FA-BD95-F8D39DB9AF90%40beckweb.net.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages