@@ -56,11 +56,12 @@ lazy val interface = project
5656 rename(" io.github.alexarchambault.windowsansi.**" , " coursierapi.shaded.windowsansi.@1" ),
5757 rename(" concurrentrefhashmap.**" , " coursierapi.shaded.concurrentrefhashmap.@1" ),
5858 rename(" org.apache.commons.compress.**" , " coursierapi.shaded.commonscompress.@1" ),
59- rename(" org.apache.commons.io.input. **" , " coursierapi.shaded.commonsio.@1" ),
59+ rename(" org.apache.commons.io.**" , " coursierapi.shaded.commonsio.@1" ),
6060 rename(" org.codehaus.plexus.**" , " coursierapi.shaded.plexus.@1" ),
6161 rename(" org.tukaani.xz.**" , " coursierapi.shaded.xz.@1" ),
6262 rename(" org.iq80.snappy.**" , " coursierapi.shaded.snappy.@1" ),
63- rename(" com.github.plokhotnyuk.jsoniter_scala.core.**" , " coursierapi.shaded.jsoniter.@1" )
63+ rename(" com.github.plokhotnyuk.jsoniter_scala.core.**" , " coursierapi.shaded.jsoniter.@1" ),
64+ rename(" com.github.luben.zstd.**" , " coursierapi.shaded.zstd.@1" )
6465 )
6566
6667 val processor = new com.eed3si9n.jarjar.JJProcessor (
@@ -128,13 +129,29 @@ lazy val interface = project
128129 else
129130 Nil
130131
131- baseOptions ++ maybeJava9Options
132+ val slf4jJarsOptions = {
133+ val updateReport = updateFull.value
134+ val report = updateReport
135+ .configurations
136+ .find(_.configuration.name == Compile .name)
137+ .getOrElse {
138+ sys.error(s " Configuration ${Compile .name} not found in update report (found configs: ${updateReport.configurations.map(_.configuration.name)}) " )
139+ }
140+ val moduleReports = report.modules
141+ val slf4jJars = moduleReports
142+ .find(r => r.module.organization == " org.slf4j" && r.module.name == " slf4j-api" )
143+ .toVector
144+ .flatMap(_.artifacts.map(_._2))
145+ slf4jJars.map(jar => s " -libraryjars $jar" )
146+ }
147+
148+ baseOptions ++ maybeJava9Options ++ slf4jJarsOptions
132149 },
133150 Proguard / proguard / javaOptions := Seq (" -Xmx3172M" ),
134151
135152 // Adding the interface JAR rather than its classes directory.
136153 // The former contains META-INF stuff in particular.
137- Proguard / proguardInputs := (Proguard / proguardInputs).value.filter(f => ! f.isDirectory || f.getName != " classes" ),
154+ Proguard / proguardInputs := (Proguard / proguardInputs).value.filter(f => ( ! f.isDirectory || f.getName != " classes" ) && ! f.getName.startsWith( " slf4j-api- " ) ),
138155 Proguard / proguardInputs += (Compile / packageBin).value,
139156
140157 Proguard / proguardBinaryDeps := Settings .getAllBinaryDeps.value,
@@ -155,6 +172,8 @@ lazy val interface = project
155172 pomPostProcess := { node =>
156173 new RuleTransformer (new RewriteRule {
157174 override def transform (node : XmlNode ) = node match {
175+ case elem : Elem if node.label == " dependency" && node.child.exists(n => n.label == " artifactId" && n.text.trim == " slf4j-api" ) =>
176+ elem
158177 case _ : Elem if node.label == " dependency" =>
159178 val org = node.child.find(_.label == " groupId" ).fold(" " )(_.text.trim)
160179 val name = node.child.find(_.label == " artifactId" ).fold(" " )(_.text.trim)
@@ -168,9 +187,10 @@ lazy val interface = project
168187 Settings .shared,
169188 Settings .mima(),
170189 libraryDependencies ++= Seq (
171- " io.get-coursier" %% " coursier" % " 2.1.0-M6-53-gb4f448130" ,
172- " io.get-coursier" %% " coursier-jvm" % " 2.1.0-M6-53-gb4f448130" ,
173- " io.get-coursier.jniutils" % " windows-jni-utils-coursierapi" % " 0.3.3"
190+ " io.get-coursier" %% " coursier" % " 2.1.0-M7-18-g67daad6a9" ,
191+ " io.get-coursier" %% " coursier-jvm" % " 2.1.0-M7-18-g67daad6a9" ,
192+ " io.get-coursier.jniutils" % " windows-jni-utils-coursierapi" % " 0.3.3" ,
193+ " org.slf4j" % " slf4j-api" % " 1.7.36" // no need to shade that one…
174194 ),
175195
176196 libraryDependencies += " com.lihaoyi" %% " utest" % " 0.8.1" % Test ,
0 commit comments