You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The provided dependency on commons-logging is inconsistent with the general design of this POM, which avoids specifying Jenkins core dependencies in order to allow them to be fetched from the Jenkins core BOM.
For a comprehensive fix, the provided dependency should be removed both from here and from Jenkins core. The main implementation/testing challenge here is to avoid a regression with regard to https://www.slf4j.org/codes.html#release
The relevant test scenarios are:
Jenkins core before the change to remove commons-logging, plugin POM before the change to remove commons-logging (the status quo)
Jenkins core before the change to remove commons-logging, plugin POM after the change to remove commons-logging (the scenario when a plugin updates its parent POM but not its core)
Jenkins core after the change to remove commons-logging, plugin POM before the change to remove commons-logging (the scenario when a plugin updates its core but not its parent POM)
Jenkins core after the change to remove commons-logging, plugin POM after the change to remove commons-logging (the scenario when a plugin updates both its core and its parent POM)
A test scenario should be set up to expose https://www.slf4j.org/codes.html#release in both core and a plugin, and the results of (1) in both scenarios should be measured to establish a baseline. Then (2), (3), and (4) should also be measured in all applicable scenarios to assure there are no regressions.
The text was updated successfully, but these errors were encountered:
As an aside: Jenkins code normally uses just java.util.logging. AFAICT the only reason we do anything in core/POM regarding slf4j, log4j, or commons-logging is to handle a few log messages from org.apache.commons.beanutils.ConvertUtilsBean, used by Stapler for form binding. Unfortunately that is used by several plugins so not trivial to rip out.
The
provided
dependency oncommons-logging
is inconsistent with the general design of this POM, which avoids specifying Jenkins core dependencies in order to allow them to be fetched from the Jenkins core BOM.For a comprehensive fix, the
provided
dependency should be removed both from here and from Jenkins core. The main implementation/testing challenge here is to avoid a regression with regard to https://www.slf4j.org/codes.html#releaseThe relevant test scenarios are:
commons-logging
, plugin POM before the change to removecommons-logging
(the status quo)commons-logging
, plugin POM after the change to removecommons-logging
(the scenario when a plugin updates its parent POM but not its core)commons-logging
, plugin POM before the change to removecommons-logging
(the scenario when a plugin updates its core but not its parent POM)commons-logging
, plugin POM after the change to removecommons-logging
(the scenario when a plugin updates both its core and its parent POM)A test scenario should be set up to expose https://www.slf4j.org/codes.html#release in both core and a plugin, and the results of (1) in both scenarios should be measured to establish a baseline. Then (2), (3), and (4) should also be measured in all applicable scenarios to assure there are no regressions.
The text was updated successfully, but these errors were encountered: