summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuild.sc28
-rw-r--r--core/src/main/scala/mill/discover/Mirror.scala4
-rw-r--r--core/src/test/scala/mill/discover/CrossModuleTests.scala4
3 files changed, 17 insertions, 19 deletions
diff --git a/build.sc b/build.sc
index 034a0685..7ccb2d32 100755
--- a/build.sc
+++ b/build.sc
@@ -21,20 +21,20 @@ object Core extends ScalaModule {
def basePath = pwd / 'core
override def sources = pwd/'core/'src/'main/'scala
-// val cross =
-// for(jarLabel <- mill.define.Cross("jarA", "jarB", "jarC"))
-// yield new mill.Module{
-// def printIt() = T.command{
-// println("PRINTING IT: " + jarLabel)
-// }
-// def jar = T{
-// val dest = T.ctx().dest
-// ammonite.ops.mkdir(dest/ammonite.ops.up)
-// ammonite.ops.cp(Core.jar().path, dest)
-//
-// PathRef(dest)
-// }
-// }
+ val cross =
+ for(jarLabel <- mill.define.Cross("jarA", "jarB", "jarC"))
+ yield new mill.Module{
+ def printIt() = T.command{
+ println("PRINTING IT: " + jarLabel)
+ }
+ def jar = T{
+ val dest = T.ctx().dest
+ ammonite.ops.mkdir(dest/ammonite.ops.up)
+ ammonite.ops.cp(Core.jar().path, dest)
+
+ PathRef(dest)
+ }
+ }
object test extends this.Tests{
def basePath = pwd / 'core
diff --git a/core/src/main/scala/mill/discover/Mirror.scala b/core/src/main/scala/mill/discover/Mirror.scala
index 792459b1..4dfeaa25 100644
--- a/core/src/main/scala/mill/discover/Mirror.scala
+++ b/core/src/main/scala/mill/discover/Mirror.scala
@@ -20,7 +20,7 @@ case class Mirror[-T, V](node: (T, List[List[Any]]) => V,
crossChildren: Option[(V => List[List[Any]], Mirror[T, _])]){
def labelled(obj: T, p: Seq[Mirror.Segment]) = {
val crossValues = p.map{case Mirror.Segment.Cross(vs) => vs case _ => Nil}.toList
- targets.map(t => t.labelled(node(obj, crossValues.map(_.toList)), p.reverse))
+ targets.map(t => t.labelled(node(obj, crossValues.reverse.map(_.toList)), p.reverse))
}
}
@@ -39,7 +39,7 @@ object Mirror{
h.children.flatMap{case (label, c) => rec(Segment.Label(label) :: segmentsRev, c)} ++
h.crossChildren.toSeq.flatMap{
case (crossGen, c) =>
- crossGen(h.node(t, crossValues.map(_.toList))).flatMap(cross =>
+ crossGen(h.node(t, crossValues.reverse.map(_.toList))).flatMap(cross =>
rec(Segment.Cross(cross) :: segmentsRev, c)
)
}
diff --git a/core/src/test/scala/mill/discover/CrossModuleTests.scala b/core/src/test/scala/mill/discover/CrossModuleTests.scala
index 8d8a86f6..c426d126 100644
--- a/core/src/test/scala/mill/discover/CrossModuleTests.scala
+++ b/core/src/test/scala/mill/discover/CrossModuleTests.scala
@@ -94,8 +94,8 @@ object CrossModuleTests extends TestSuite{
outer.crossed(List("2.12.4")).scalaVersion
)
assert(targets == expected)
-
}
+
'doubleCrossTargetDiscovery - {
object outer{
val crossed =
@@ -114,8 +114,6 @@ object CrossModuleTests extends TestSuite{
outer.crossed(List("native0.3", "2.12.4")).suffix
)
assert(targets == expected)
-
}
}
}
-