diff options
Diffstat (limited to 'scalalib')
-rw-r--r-- | scalalib/src/mill/scalalib/Dep.scala | 10 | ||||
-rw-r--r-- | scalalib/src/mill/scalalib/ScalaModule.scala | 2 | ||||
-rw-r--r-- | scalalib/src/mill/scalalib/publish/Ivy.scala | 6 | ||||
-rw-r--r-- | scalalib/src/mill/scalalib/publish/Pom.scala | 2 | ||||
-rw-r--r-- | scalalib/test/src/mill/scalalib/ResolveDepsTests.scala | 8 |
5 files changed, 19 insertions, 9 deletions
diff --git a/scalalib/src/mill/scalalib/Dep.scala b/scalalib/src/mill/scalalib/Dep.scala index 84aa6576..9719bd2d 100644 --- a/scalalib/src/mill/scalalib/Dep.scala +++ b/scalalib/src/mill/scalalib/Dep.scala @@ -24,6 +24,8 @@ sealed trait Dep { } object Dep{ + val DefaultConfiguration = "default(compile)" + implicit def parse(signature: String) = { val parts = signature.split(';') val module = parts.head @@ -45,7 +47,7 @@ object Dep{ }).configure(attributes = attributes) } def apply(org: String, name: String, version: String, cross: Boolean): Dep = { - this(coursier.Dependency(coursier.Module(org, name), version), cross) + this(coursier.Dependency(coursier.Module(org, name), version, DefaultConfiguration), cross) } case class Java(dep: coursier.Dependency, cross: Boolean, force: Boolean) extends Dep { def configure(attributes: coursier.Attributes): Dep = copy(dep = dep.copy(attributes = attributes)) @@ -53,7 +55,7 @@ object Dep{ object Java{ implicit def rw: RW[Java] = macroRW def apply(org: String, name: String, version: String, cross: Boolean, force: Boolean): Dep = { - Java(coursier.Dependency(coursier.Module(org, name), version), cross, force) + Java(coursier.Dependency(coursier.Module(org, name), version, DefaultConfiguration), cross, force) } } implicit def default(dep: coursier.Dependency): Dep = new Java(dep, false, false) @@ -64,7 +66,7 @@ object Dep{ object Scala{ implicit def rw: RW[Scala] = macroRW def apply(org: String, name: String, version: String, cross: Boolean, force: Boolean): Dep = { - Scala(coursier.Dependency(coursier.Module(org, name), version), cross, force) + Scala(coursier.Dependency(coursier.Module(org, name), version, DefaultConfiguration), cross, force) } } case class Point(dep: coursier.Dependency, cross: Boolean, force: Boolean) extends Dep { @@ -73,7 +75,7 @@ object Dep{ object Point{ implicit def rw: RW[Point] = macroRW def apply(org: String, name: String, version: String, cross: Boolean, force: Boolean): Dep = { - Point(coursier.Dependency(coursier.Module(org, name), version), cross, force) + Point(coursier.Dependency(coursier.Module(org, name), version, DefaultConfiguration), cross, force) } } implicit def rw = RW.merge[Dep]( diff --git a/scalalib/src/mill/scalalib/ScalaModule.scala b/scalalib/src/mill/scalalib/ScalaModule.scala index 562b60d6..c0ef6cce 100644 --- a/scalalib/src/mill/scalalib/ScalaModule.scala +++ b/scalalib/src/mill/scalalib/ScalaModule.scala @@ -335,7 +335,7 @@ trait ScalaModule extends mill.Module with TaskModule { outer => unmanagedClasspath() ++ resolveDeps(T.task{ runIvyDeps() ++ scalaLibraryIvyDeps() ++ transitiveIvyDeps() ++ - Agg(ivy"com.lihaoyi:::ammonite:1.1.0-7-33b728c") + Agg(ivy"com.lihaoyi:::ammonite:1.1.0-12-f07633d") })() } diff --git a/scalalib/src/mill/scalalib/publish/Ivy.scala b/scalalib/src/mill/scalalib/publish/Ivy.scala index 3b271fa8..22e26ff6 100644 --- a/scalalib/src/mill/scalalib/publish/Ivy.scala +++ b/scalalib/src/mill/scalalib/publish/Ivy.scala @@ -42,10 +42,10 @@ object Ivy { private def renderDependency(dep: Dependency) = { if (dep.exclusions.isEmpty) - <dependency org={dep.artifact.group} name={dep.artifact.id} rev={dep.artifact.version} conf={s"${dep.scope}->default(${dep.configuration.getOrElse("compile")})"} /> + <dependency org={dep.artifact.group} name={dep.artifact.id} rev={dep.artifact.version} conf={s"${scopeToConf(dep.scope)}->${dep.configuration.getOrElse("default(compile)")}"} /> else - <dependency org={dep.artifact.group} name={dep.artifact.id} rev={dep.artifact.version} conf={s"${dep.scope}->default(${dep.configuration.getOrElse("compile")})"}> - {dep.exclusions.map(ex => <exclude org={ex._1} name={ex._2} matcher="exact"/>).toSeq} + <dependency org={dep.artifact.group} name={dep.artifact.id} rev={dep.artifact.version} conf={s"${scopeToConf(dep.scope)}->${dep.configuration.getOrElse("default(compile)")}"}> + {dep.exclusions.map(ex => <exclude org={ex._1} name={ex._2} matcher="exact"/>)} </dependency> } diff --git a/scalalib/src/mill/scalalib/publish/Pom.scala b/scalalib/src/mill/scalalib/publish/Pom.scala index 3c8ba4dc..84cf0632 100644 --- a/scalalib/src/mill/scalalib/publish/Pom.scala +++ b/scalalib/src/mill/scalalib/publish/Pom.scala @@ -108,7 +108,7 @@ object Pom { <groupId>{ex._1}</groupId> <artifactId>{ex._2}</artifactId> </exclude> - )}.toSeq + )} </exclusions> {scope} </dependency> diff --git a/scalalib/test/src/mill/scalalib/ResolveDepsTests.scala b/scalalib/test/src/mill/scalalib/ResolveDepsTests.scala index b1fcec3e..861fa312 100644 --- a/scalalib/test/src/mill/scalalib/ResolveDepsTests.scala +++ b/scalalib/test/src/mill/scalalib/ResolveDepsTests.scala @@ -26,6 +26,14 @@ object ResolveDepsTests extends TestSuite { assert(paths.items.next.path.toString.contains("natives-macos")) } + 'resolveTransitiveRuntimeDeps - { + val deps = Agg(ivy"org.mockito:mockito-core:2.7.22") + val Success(paths) = evalDeps(deps) + assert(paths.nonEmpty) + assert(paths.exists(_.path.toString.contains("objenesis"))) + assert(paths.exists(_.path.toString.contains("byte-buddy"))) + } + 'excludeTransitiveDeps - { val deps = Agg(ivy"com.lihaoyi::pprint:0.5.3".exclude("com.lihaoyi" -> "fansi_2.12")) val Success(paths) = evalDeps(deps) |