object Target extends TaskBase
- Source
- Task.scala
- Alphabetic
- By Inheritance
- Target
- TaskBase
- TraverseCtxHolder
- Applyer
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- implicit macro def apply[T](t: Result[T])(implicit rw: upickle.default.ReadWriter[T], ctx: Ctx): Target[T]
- implicit macro def apply[T](t: T)(implicit rw: upickle.default.ReadWriter[T], ctx: Ctx): Target[T]
A target is the most common Task a user would encounter, commonly defined using the
def foo = Task {...}
syntax.A target is the most common Task a user would encounter, commonly defined using the
def foo = Task {...}
syntax. TargetImpls require that their return type is JSON serializable. In return, they automatically cache their return value to disk, only re-computing if upstream Tasks change - def args(implicit ctx: api.Ctx.Args): IndexedSeq[_]
Returns the implicit mill.api.Ctx.Args.args in scope.
Returns the implicit mill.api.Ctx.Args.args in scope.
- Definition Classes
- TaskBase
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
- def ctx()(implicit c: api.Ctx): api.Ctx
- Definition Classes
- Applyer
- def dest(implicit ctx: Dest): Path
T.dest
is a uniqueos.Path
(e.g.T.dest
is a uniqueos.Path
(e.g.out/classFiles.dest/
orout/run.dest/
) that is assigned to every Target or Command. It is cleared before your task runs, and you can use it as a scratch space for temporary files or a place to put returned artifacts. This is guaranteed to be unique for every Target or Command, so you can be sure that you will not collide or interfere with anyone else writing to those same paths.- Definition Classes
- TaskBase
- def env(implicit ctx: Env): Map[String, String]
T.env
is the environment variable map passed to the Mill command when it is run; typically used inside aTask.Input
to ensure any changes in the env vars are properly detected.T.env
is the environment variable map passed to the Mill command when it is run; typically used inside aTask.Input
to ensure any changes in the env vars are properly detected.Note that you should not use
sys.env
, as Mill's long-lived server process means thatsys.env
variables may not be up to date.- Definition Classes
- TaskBase
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def fork(implicit ctx: api.Ctx): Api
Provides the
.fork.async
and.fork.await
APIs for spawning and joining async futures within your task in a Mill-friendly manner.Provides the
.fork.async
and.fork.await
APIs for spawning and joining async futures within your task in a Mill-friendly manner.- Definition Classes
- TaskBase
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def home(implicit ctx: Home): Path
Returns the implicit mill.api.Ctx.Home.home in scope.
Returns the implicit mill.api.Ctx.Home.home in scope.
- Definition Classes
- TaskBase
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def log(implicit ctx: Log): Logger
T.log
is the default logger provided for every task.T.log
is the default logger provided for every task. While your task is running,System.out
andSystem.in
are also redirected to this logger. The logs for a task are streamed to standard out/error as you would expect, but each task's specific output is also streamed to a log file on disk, e.g.out/run.log
orout/classFiles.log
for you to inspect later.Messages logged with
log.debug
appear by default only in the log files. You can use the--debug
option when running mill to show them on the console too.- Definition Classes
- TaskBase
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def reporter(implicit ctx: api.Ctx): (Int) => Option[CompileProblemReporter]
Report build results to BSP for IDE integration
Report build results to BSP for IDE integration
- Definition Classes
- TaskBase
- def sequence[T](source: Seq[Task[T]]): Task[Seq[T]]
Converts a
Seq[Task[T]]
into aTask[Seq[T]]
Converts a
Seq[Task[T]]
into aTask[Seq[T]]
- Definition Classes
- TaskBase
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def testReporter(implicit ctx: api.Ctx): TestReporter
Report test results to BSP for IDE integration
Report test results to BSP for IDE integration
- Definition Classes
- TaskBase
- def toString(): String
- Definition Classes
- AnyRef → Any
- def traverse[T, V](source: Seq[T])(f: (T) => Task[V]): Task[Seq[V]]
Converts a
Seq[T]
into aTask[Seq[V]]
using the givenf: T => Task[V]
Converts a
Seq[T]
into aTask[Seq[V]]
using the givenf: T => Task[V]
- Definition Classes
- TaskBase
- def traverseCtx[I, R](xs: Seq[Task[I]])(f: (IndexedSeq[I], api.Ctx) => Result[R]): Task[R]
A variant of traverse that also provides the mill.api.Ctx to the function f
A variant of traverse that also provides the mill.api.Ctx to the function f
- Definition Classes
- TraverseCtxHolder
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def workspace(implicit ctx: api.Ctx): Path
This is the
os.Path
pointing to the project root directory.This is the
os.Path
pointing to the project root directory.This is the preferred access to the project directory, and should always be preferred over
os.pwd
* (which might also point to the project directory in classic cli scenarios, but might not in other use cases like BSP or LSP server usage).- Definition Classes
- TaskBase
- object Internal
Deprecated Value Members
- macro def apply[T](t: Task[T])(implicit rw: upickle.default.ReadWriter[T], ctx: Ctx): Target[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Creating a target from a task is deprecated. You most likely forgot a parenthesis pair
()
- macro def command[T](t: Result[T])(implicit w: upickle.default.Writer[T], ctx: Ctx, cls: EnclosingClass): Command[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Command instead
- macro def command[T](t: Task[T])(implicit ctx: Ctx, w: upickle.default.Writer[T], cls: EnclosingClass): Command[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Creating a command from a task is deprecated. You most likely forgot a parenthesis pair
()
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)
- macro def input[T](value: Result[T])(implicit w: upickle.default.Writer[T], ctx: Ctx): Target[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Input instead
- macro def persistent[T](t: Result[T])(implicit rw: upickle.default.ReadWriter[T], ctx: Ctx): Target[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task(persistent = true){...} instead
- macro def source(value: Result[api.PathRef])(implicit ctx: Ctx): Target[api.PathRef]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Source instead
- macro def source(value: Result[Path])(implicit ctx: Ctx): Target[api.PathRef]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Source instead
- macro def sources(values: Result[Seq[api.PathRef]])(implicit ctx: Ctx): Target[Seq[api.PathRef]]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Sources instead
- macro def sources(values: Result[Path]*)(implicit ctx: Ctx): Target[Seq[api.PathRef]]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Sources instead
- macro def task[T](t: Result[T]): Task[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC2) Use Task.Anon instead
- macro def worker[T](t: Result[T])(implicit ctx: Ctx): Worker[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Use Task.Worker instead
- macro def worker[T](t: Task[T])(implicit ctx: Ctx): Worker[T]
- Annotations
- @deprecated
- Deprecated
(Since version Mill after 0.12.0-RC1) Creating a worker from a task is deprecated. You most likely forgot a parenthesis pair
()