diff --git a/modules/lm-coursier/src/main/scala/lmcoursier/definitions/ModuleMatchers.scala b/modules/lm-coursier/src/main/scala/lmcoursier/definitions/ModuleMatchers.scala index 9cb8e7f34..31464d3bc 100644 --- a/modules/lm-coursier/src/main/scala/lmcoursier/definitions/ModuleMatchers.scala +++ b/modules/lm-coursier/src/main/scala/lmcoursier/definitions/ModuleMatchers.scala @@ -15,6 +15,8 @@ import dataclass.data object ModuleMatchers { def all: ModuleMatchers = ModuleMatchers(Set.empty, Set.empty) + def only(organization: String, moduleName: String): ModuleMatchers = + ModuleMatchers(Set.empty, Set(Module(Organization(organization), ModuleName(moduleName), Map())), includeByDefault = false) def only(mod: Module): ModuleMatchers = ModuleMatchers(Set.empty, Set(mod), includeByDefault = false) } diff --git a/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala b/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala index 00c4be4e1..fb7041b92 100644 --- a/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala +++ b/modules/sbt-lm-coursier/src/main/scala/coursier/sbtlmcoursier/LmCoursierPlugin.scala @@ -62,6 +62,7 @@ object LmCoursierPlugin extends AutoPlugin { Def.task(sbt.hack.Foo.updateTask(lm).value) }.value ) ++ + setCsrConfiguration ++ inTask(updateClassifiers)( Seq( dependencyResolution := mkDependencyResolution.value, @@ -86,6 +87,21 @@ object LmCoursierPlugin extends AutoPlugin { } } + private def setCsrConfiguration: Seq[Setting[_]] = { + val csrConfigurationOpt = try { + val key = sbt.Keys.asInstanceOf[{ + def csrConfiguration: TaskKey[CoursierConfiguration] + }].csrConfiguration + Some(key) + } catch { + case _: NoSuchMethodException => + None + } + + csrConfigurationOpt.toSeq.map { csrConfiguration => + csrConfiguration := coursierConfiguration.value + } + } private def mkCoursierConfiguration(withClassifiers: Boolean = false, sbtClassifiers: Boolean = false): Def.Initialize[Task[CoursierConfiguration]] = Def.taskDyn {