summaryrefslogtreecommitdiff
path: root/main/src/main/MillIvyHook.scala
blob: 2b4eb6a7141ff38a5144d16cb2ea23b5b8d61043 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package mill.main
import ammonite.runtime.ImportHook.BaseIvy
import ammonite.runtime.ImportHook
import java.io.File

/**
 * Overrides the ivy hook to interpret $MILL_VERSION as the version of mill
 * the user runs.
 *
 * Can be used to ensure loaded contrib modules keep up to date.
 */
object MillIvyHook extends BaseIvy(plugin = false){
  override def resolve(interp: ImportHook.InterpreterInterface, signatures: Seq[String]): Either[String,Set[File]] =
    super.resolve(interp, signatures.map(_.replace("$MILL_VERSION", mill.BuildInfo.millVersion)))
}