Bug#988312: libslf4j-java: misses liblog4j1.2-java as a dependency

Pierre Gruet pgt at debian.org
Fri Aug 27 21:41:26 BST 2021


Hi Emmanuel,

On Mon, 10 May 2021 12:41:36 +0200 Emmanuel Bourg <ebourg at apache.org> wrote:
 > Le 2021-05-10 11:23, Pierre Gruet a écrit :
 >
 > > Version 1.7.30-1 of libslf4j does not declare liblog4j1.2-java as a
 > > dependency,
 > > it is only declared within the "Suggests:" field in debian/control.
 > >
 > > Yet the classes of liblog4j1.2-java are needed by many classes in
 > > slf4j-migrator.jar, slf4j-log4j12.jar, log4j-over-slf4j.jar.
 > > log4j:log4j is
 > > also a declared dependency with scope runtime in slf4j-log4j12/pom.xml.
 > > For this reason, other projects depending on the artifact slf4j-log4j12
 > > fail to
 > > resolve log4j:log4j:1.2.x.
 >
 > The dependency on log4j is only suggested because it's optional. The
 > right
 > solution I think it to move slf4j-log4j12 into its own
 > libslf4j-log4j12-java
 > package with a hard dependency on liblog4j1.2-java.

I have just given it a try, it is quite easy to create a second binary 
package libslf4j-log4j12-java that depends on libslf4j-java and on 
liblog4j1.2-java, yet I tried to use ratt and it attempts to rebuild 
more than 850 packages.

I am unsure the binary package split is worth running this number of 
builds and then touching all the reverse-dependencies that need it.
Does keeping one binary package libslf4j-java and having it depend on 
liblog4j1.2-java (instead of just suggesting it) really seem 
unreasonable to you?
After all, the log4j-1.2.jar file is really needed in the classpath when 
using the artifact slf4j-log4j12.

 >
 > Emmanuel Bourg
 >
 >

Thanks again for your advice on this,

-- 
Pierre



More information about the pkg-java-maintainers mailing list