From fa203eab9264e337e666395c686717dbf98a045c Mon Sep 17 00:00:00 2001 From: Li Haoyi Date: Sat, 17 Feb 2018 23:55:23 -0800 Subject: attempt to git pull when doing publish-local.sh to ensure tags appear locally --- .travis.yml | 1 + docs/pages/1 - Intro to Mill.md | 25 +++++++++++++++---------- docs/pages/3 - Common Project Layouts.md | 10 ++++++++-- docs/pages/6 - Extending Mill.md | 9 +++++---- 4 files changed, 29 insertions(+), 16 deletions(-) diff --git a/.travis.yml b/.travis.yml index 04f1bfc2..57a75bef 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,6 +24,7 @@ matrix: env: CI_SCRIPT="ci/on-master.py ci/publish-docs.sh" script: + - git fetch --unshallow --tags - "$CI_SCRIPT" cache: directories: diff --git a/docs/pages/1 - Intro to Mill.md b/docs/pages/1 - Intro to Mill.md index 5ee8590a..cf7a7ff5 100644 --- a/docs/pages/1 - Intro to Mill.md +++ b/docs/pages/1 - Intro to Mill.md @@ -2,16 +2,17 @@ [Confused by SBT](http://www.lihaoyi.com/post/SowhatswrongwithSBT.html)? Frustrated by Maven? Perplexed by Gradle? Give Mill a try! -Mill is a general purpose build-tool. It has built in support for the -[Scala](https://www.scala-lang.org/) programming language, and can serve as a -replacement for [SBT](http://www.scala-sbt.org/), but can also be extended to -support any other language or platform via modules (written in Java or Scala) or -through external subprocesses. - -Mill aims for simplicity by -[re-using concepts you are already familiar with](http://www.lihaoyi.com/post/BuildToolsasPureFunctionalPrograms.html) -to let you define your project's build. Mill's `build.sc` files are Scala -scripts. +Mill aims for simplicity by re-using concepts you are already +[familiar with](http://www.lihaoyi.com/post/BuildToolsasPureFunctionalPrograms.html), +borrowing ideas from modern tools like [Bazel](https://bazel.build/), to let you +build your projects in a way that's simple, fast, and predictable. + +Mill has built in support for the [Scala](https://www.scala-lang.org/) +programming language, and can serve as a replacement for +[SBT](http://www.scala-sbt.org/), but can also be +[extended](http://www.lihaoyi.com/mill/page/extending-mill.html) to support any +other language or platform via modules (written in Java or Scala) or through +external subprocesses. To get started, download Mill and install it into your system via the following `curl`/`chmod` command: @@ -20,6 +21,10 @@ To get started, download Mill and install it into your system via the following sudo curl -L -o /usr/local/bin/mill https://github.com/lihaoyi/mill/releases/download/0.1.0/0.1.0 && sudo chmod +x /usr/local/bin/mill ``` +More recent, unstable versions of Mill are also +[available](https://github.com/lihaoyi/mill/releases/tag/unstable), if you want +to try out the latest features and improvements that are currently in master. + The simplest Mill build for a Scala project looks as follows: ```scala diff --git a/docs/pages/3 - Common Project Layouts.md b/docs/pages/3 - Common Project Layouts.md index 788750a8..17d5f95c 100644 --- a/docs/pages/3 - Common Project Layouts.md +++ b/docs/pages/3 - Common Project Layouts.md @@ -11,6 +11,9 @@ import mill.scalalib._ object foo extends Cross[FooModule]("2.10.6", "2.11.11", "2.12.4") class FooModule(val crossScalaVersion: String) extends CrossScalaModule{ ... + object test extends Tests{ + ... + } } ``` @@ -89,6 +92,9 @@ import mill.scalalib._ object foo extends Cross[FooModule]("2.10.6", "2.11.11", "2.12.4") class FooModule(val crossScalaVersion: String) extends CrossSbtModule{ ... + object test extends Tests{ + ... + } } ``` @@ -210,8 +216,8 @@ versions of Scala. - [Mill Build](https://github.com/lihaoyi/mill/blob/master/integration/test/resources/upickle/build.sc#L1) -A single cross-platform Scala.js/Scala-JVM module, including the setup necessary -for publishing to Maven Central +A single cross-platform Scala.js/Scala-JVM module cross-built against multiple +versions of Scala, including the setup necessary for publishing to Maven Central ## Ammonite diff --git a/docs/pages/6 - Extending Mill.md b/docs/pages/6 - Extending Mill.md index cff03ff2..e5b655f5 100644 --- a/docs/pages/6 - Extending Mill.md +++ b/docs/pages/6 - Extending Mill.md @@ -18,11 +18,12 @@ isn't covered by the built-in `ScalaModule`s/`ScalaJSModule`s, simply write a custom Target (for cached computations) or Command (for un-cached actions) and you're done. -For filesystem operations, you can use the +For subprocess/filesystem operations, you can use the [Ammonite-Ops](http://ammonite.io/#Ammonite-Ops) library that comes bundled with -Mill, or even plain `java.nio`. Each target gets it's own -[T.ctx().dest](/page/tasks#millutilctxdestctx) folder that you can use to place -files without worrying about colliding with other targets +Mill, or even plain `java.nio`/`java.lang.Process. Each target gets it's own +[T.ctx().dest](http://www.lihaoyi.com/mill/page/tasks#millutilctxdestctx) folder +that you can use to place files without worrying about colliding with other +targets. This covers use cases like: -- cgit v1.2.3