diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2018-01-06 23:25:29 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2018-01-07 00:21:37 -0800 |
commit | 7cd18fd936b95410274be031a8231e5a3d9866a4 (patch) | |
tree | c3d9a1f4a110dc5f25824eb9f118ea8ebfcd2b37 /scalajslib | |
parent | a6febe05a5650274110301a09bb97e4770ea0400 (diff) | |
download | mill-7cd18fd936b95410274be031a8231e5a3d9866a4.tar.gz mill-7cd18fd936b95410274be031a8231e5a3d9866a4.tar.bz2 mill-7cd18fd936b95410274be031a8231e5a3d9866a4.zip |
First pass at implicitly propagating a `def basePath: Path` up the `Module` hierarchy, which each module receives and extends.
One constraint is that now must define your abstract modules as `trait`s rather than `class`es, or otherwise add an implicit `ctx: ModuleCtx` parameter to your class definition.
So far this lets us remove some explicit `basePath` definitions in `build.sc`. Proper handling of `basePath` in `CrossModule`s is future work
Diffstat (limited to 'scalajslib')
-rw-r--r-- | scalajslib/src/test/scala/mill/scalajslib/HelloJSWorldTests.scala | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/scalajslib/src/test/scala/mill/scalajslib/HelloJSWorldTests.scala b/scalajslib/src/test/scala/mill/scalajslib/HelloJSWorldTests.scala index 85052a04..4a8fd3cf 100644 --- a/scalajslib/src/test/scala/mill/scalajslib/HelloJSWorldTests.scala +++ b/scalajslib/src/test/scala/mill/scalajslib/HelloJSWorldTests.scala @@ -10,17 +10,17 @@ import mill.define.Cross import mill.discover.Discovered import mill.scalalib.PublishModule import mill.scalalib.publish.{Developer, License, PomSettings, SCM} -import mill.util.TestEvaluator +import mill.util.{TestEvaluator, TestUtil} import utest._ import scala.collection.JavaConverters._ -trait HelloJSWorldModule extends ScalaJSModule with PublishModule { - def basePath = HelloJSWorldTests.workspacePath +trait HelloJSWorldModule extends TestUtil.BaseModule with ScalaJSModule with PublishModule { + override def basePath = HelloJSWorldTests.workspacePath override def mainClass = Some("Main") } -object HelloJSWorld { +object HelloJSWorld extends TestUtil.BaseModule { val build = for { scalaJS <- Cross("0.6.20", "0.6.21", "1.0.0-M2") scala <- Cross("2.11.8", "2.12.3", "2.12.4") |