Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-30644

Jenkins should manage better the plugin dependencies when disabling/uninstalling a plugin

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Major Major
    • core
    • None

      If you disable a plugin which has a hard dependency with another plugin, Jenkins doesn't report anything or suggest you to disable/delete the dependencies. At the end, you can end up with stacktraces like:

      WARNING: Failed to scout com.cloudbees.opscenter.client.plugin.ClusterSessionClientExtensionHandler 
      java.lang.InstantiationException: java.lang.NoClassDefFoundError: hudson/plugins/openid/OpenIdExtension 
      at net.java.sezpoz.IndexItem.element(IndexItem.java:146) 
      at hudson.ExtensionFinder$Sezpoz.scout(ExtensionFinder.java:666) 
      at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:354) 
      at hudson.ExtensionList.load(ExtensionList.java:300) 
      at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253) 
      at hudson.ExtensionList.iterator(ExtensionList.java:143) 
      at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:353) 
      at hudson.ExtensionList.load(ExtensionList.java:300) 
      at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253) 
      at hudson.ExtensionList.size(ExtensionList.java:162) 
      at java.util.AbstractCollection.toArray(AbstractCollection.java:136) 
      at java.util.ArrayList.addAll(ArrayList.java:559) 
      at 
      

      Jenkins should not allow you to disable a plugin when there is such kind of dependency. It should instead maybe give you also the tree of dependencies so you can uninstall all of them if you want.

      A Warning can be also an option saying that it is not possible to remove/disable because there is a dependency with another plugin. I don't like too much this option because you end up with a lot of manual work.

          [JENKINS-30644] Jenkins should manage better the plugin dependencies when disabling/uninstalling a plugin

          Félix Belzunce Arcos created issue -
          Félix Belzunce Arcos made changes -
          Summary Original: Jenkins should manage better the plugin dependencies when disable/uninstall a plugin New: Jenkins should manage better the plugin dependencies when disabling/uninstalling a plugin
          Félix Belzunce Arcos made changes -
          Description Original: If you disable a plugin which has a hard dependency with another plugin, Jenkins doesn't report anything or suggest you to disable/delete the dependencies. At the end, you can end up with stacktraces like:


          {code:java}
          WARNING: Failed to scout com.cloudbees.opscenter.client.plugin.ClusterSessionClientExtensionHandler
          java.lang.InstantiationException: java.lang.NoClassDefFoundError: hudson/plugins/openid/OpenIdExtension
          at net.java.sezpoz.IndexItem.element(IndexItem.java:146)
          at hudson.ExtensionFinder$Sezpoz.scout(ExtensionFinder.java:666)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:354)
          at hudson.ExtensionList.load(ExtensionList.java:300)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253)
          at hudson.ExtensionList.iterator(ExtensionList.java:143)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:353)
          at hudson.ExtensionList.load(ExtensionList.java:300)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253)
          at hudson.ExtensionList.size(ExtensionList.java:162)
          at java.util.AbstractCollection.toArray(AbstractCollection.java:136)
          at java.util.ArrayList.addAll(ArrayList.java:559)
          at
          {code}

          Jenkins should not allow you to disable a plugin when there is such kind of dependency. It should instead maybe give you also the tree of dependencies so you can uninstall all of them if you want.

          A Warning can be also an option saying that it is not possible to remove/disable because there is a dependency with another plugin. I don;t like too much this option because you end up with a lot of manual work.
          New: If you disable a plugin which has a hard dependency with another plugin, Jenkins doesn't report anything or suggest you to disable/delete the dependencies. At the end, you can end up with stacktraces like:


          {code:java}
          WARNING: Failed to scout com.cloudbees.opscenter.client.plugin.ClusterSessionClientExtensionHandler
          java.lang.InstantiationException: java.lang.NoClassDefFoundError: hudson/plugins/openid/OpenIdExtension
          at net.java.sezpoz.IndexItem.element(IndexItem.java:146)
          at hudson.ExtensionFinder$Sezpoz.scout(ExtensionFinder.java:666)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:354)
          at hudson.ExtensionList.load(ExtensionList.java:300)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253)
          at hudson.ExtensionList.iterator(ExtensionList.java:143)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:353)
          at hudson.ExtensionList.load(ExtensionList.java:300)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:253)
          at hudson.ExtensionList.size(ExtensionList.java:162)
          at java.util.AbstractCollection.toArray(AbstractCollection.java:136)
          at java.util.ArrayList.addAll(ArrayList.java:559)
          at
          {code}

          Jenkins should not allow you to disable a plugin when there is such kind of dependency. It should instead maybe give you also the tree of dependencies so you can uninstall all of them if you want.

          A Warning can be also an option saying that it is not possible to remove/disable because there is a dependency with another plugin. I don't like too much this option because you end up with a lot of manual work.

          Daniel Beck added a comment -

          Duplicates JENKINS-23150, JENKINS-21486, JENKINS-21485.

          Please search for existing reports before filing obvious long-standing bugs.

          Daniel Beck added a comment - Duplicates JENKINS-23150 , JENKINS-21486 , JENKINS-21485 . Please search for existing reports before filing obvious long-standing bugs.
          Daniel Beck made changes -
          Resolution New: Duplicate [ 3 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]

          Daniel Beck added a comment -

          Daniel Beck added a comment - Related PR: https://github.com/jenkinsci/jenkins/pull/1573
          Jesse Glick made changes -
          Link New: This issue duplicates JENKINS-21485 [ JENKINS-21485 ]
          Jesse Glick made changes -
          Link New: This issue duplicates JENKINS-21486 [ JENKINS-21486 ]
          Jesse Glick made changes -
          Link New: This issue duplicates JENKINS-23150 [ JENKINS-23150 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 165758 ] New: JNJira + In-Review [ 197808 ]

            Unassigned Unassigned
            fbelzunc Félix Belzunce Arcos
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: