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

Split most of Spring Framework out of core

    Details

    • Similar Issues:

      Description

      I looked at what it would take to remove the Spring Framework from Jenkins core. Core does not directly use anything from Spring except a trivial type DataAccessException which could easily be stubbed out, and some stuff related to parsing SecurityFilters.groovy which could be thrown out and rewritten using plain old Java calls. The main problem is acegi-security (the predecessor to Spring Security IIUC) which is used heavily and which appears to have hard dependencies on various core parts of Spring. The spring-web dep is optional, though.

      Various plugins import Spring Core classes, but again that is a hard dep of ACEGI Security anyway. BeanBuilder is used by some security realm plugins, but that would still be compatible if this stuff were simply split to a plugin. (I had hoped ldap PR 17 would delete LDAPBindSecurityRealm.groovy but no such luck.)

      Not proposing to do JENKINS-5303, which would be an update and would be of ACEGI Security which is heavily used. Would just be a regular plugin split, helpful also for JENKINS-29068. Would be desirable to also do JENKINS-28942 so that we could really get rid of spring-web and spring-webmvc, at least if ldap and active-directory deleted their old BeanBuilder calls.

        Attachments

          Issue Links

            Activity

            jglick Jesse Glick created issue -
            jglick Jesse Glick made changes -
            Field Original Value New Value
            Link This issue relates to JENKINS-5303 [ JENKINS-5303 ]
            jglick Jesse Glick made changes -
            Link This issue blocks JENKINS-29068 [ JENKINS-29068 ]
            jglick Jesse Glick made changes -
            Link This issue depends on JENKINS-28942 [ JENKINS-28942 ]
            Hide
            jvz Matt Sicker added a comment -

            What if we upgraded Spring and actually used it in core instead of Stapler? We could use various Spring functionality to support current Stapler annotations, data types, etc.

            Show
            jvz Matt Sicker added a comment - What if we upgraded Spring and actually used it in core instead of Stapler? We could use various Spring functionality to support current Stapler annotations, data types, etc.

              People

              • Assignee:
                Unassigned
                Reporter:
                jglick Jesse Glick
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: