[ https://issues.apache.org/jira/browse/SLING-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14642339#comment-14642339 ]
Chetan Mehrotra commented on SLING-4906: ---------------------------------------- Somehow I had a misunderstanding that a bundle would only be able to import packages from bundle at its own start level or level below. Hence I went all the way to SLING-3814 to ensure that Commons Log uses Groovy which is not susceptible to such transitive imports. However that understanding is wrong as a system package refresh done at any later time would wire the optional dependency from bundles at lower start level. So safe solution would be to remove such optional imports altogether! > Reduce (transitive) package dependencies > ---------------------------------------- > > Key: SLING-4906 > URL: https://issues.apache.org/jira/browse/SLING-4906 > Project: Sling > Issue Type: Improvement > Components: Commons > Reporter: Carsten Ziegeler > Assignee: Chetan Mehrotra > Fix For: Commons Log 4.0.4 > > > It seems that updating innocent looking bundles cause the whole system to > restart. We now had a case where a bundle containing some package was > updated. This package was imported by the groovy bundle and the groovy bundle > was imported by the commons.log bundle. > Unfortunately, the log4j.api bundle - which is imported by nearly almost > every bundle - imports the impl package which is exported by the commons.log > bundle. > Obviously the best solution would be if the log4j.api bundle would not import > packages, but I guess that's not feasible the way log4j works. > Therefore we should have a look at our commons.log bundle to see whether we > can reduce the imports, or the effect of other bundles being updated -- This message was sent by Atlassian JIRA (v6.3.4#6332)