mill.daemon
Members list
Type members
Classlikes
Logic around bootstrapping Mill, creating a MillBuildRootModule.BootstrapModule and compiling builds/meta-builds and classloading their RootModules so we can evaluate the requested tasks on the RootModule representing the user's build.mill file.
Logic around bootstrapping Mill, creating a MillBuildRootModule.BootstrapModule and compiling builds/meta-builds and classloading their RootModules so we can evaluate the requested tasks on the RootModule representing the user's build.mill file.
When Mill is run in daemon mode or with --watch, bootstrap state is cached in-memory across evaluations. The daemon-wide reusable bootstrap metadata lives in RunnerSharedState, while each launcher keeps its own evaluators and retained read leases in RunnerLauncherState.
When a subsequent evaluation happens, each meta-level attempts to re-use its corresponding cached frame to avoid unnecessary classloader recreation, worker churn, or re-evaluation. This should remain transparent to users while improving performance.
Attributes
- Companion
- object
- Source
- MillBuildBootstrap.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
Attributes
- Companion
- class
- Source
- MillBuildBootstrap.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
MillBuildBootstrap.type
Attributes
- Companion
- class
- Source
- MillDaemonMain0.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
MillDaemonMain0.type
Attributes
- Companion
- object
- Source
- MillDaemonMain0.scala
- Supertypes
Attributes
- Source
- MillMain0.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
MillMain0.type
Attributes
- Source
- MillNoDaemonMain0.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
MillNoDaemonMain0.type
Attributes
- Source
- MillScalaParserImpl.scala
- Supertypes
- Self type
-
MillScalaParserImpl.type
Per-launcher view of the current bootstrap/evaluation run.
Per-launcher view of the current bootstrap/evaluation run.
Holds launcher-owned resources that cannot be shared daemon-wide: active evaluators, retained meta-build read leases that pin the shared frames the launcher is using, the user-task evaluation, and the launcher session.
Attributes
- Companion
- object
- Source
- RunnerLauncherState.scala
- Supertypes
-
trait Serializabletrait Serializabletrait Producttrait Equalstrait AutoCloseabletrait Resultclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Source
- RunnerLauncherState.scala
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
RunnerLauncherState.type
Daemon-wide bootstrap cache shared across concurrent launcher runs.
Daemon-wide bootstrap cache shared across concurrent launcher runs.
Each stored frame represents reusable metadata from one level of build.mill evaluation: watches, classloaders, code signatures, classpaths, and worker caches that are safe to share between launchers. A frame whose bootstrap succeeded carries a RunnerSharedState.Frame.Reusable payload (which now also owns the per-classloader worker cache, so worker lifetime tracks classloader lifetime); a failed frame still publishes its watches so callers can use them to invalidate.
Attributes
- Companion
- object
- Source
- RunnerSharedState.scala
- Supertypes
-
trait Serializabletrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Source
- RunnerSharedState.scala
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
RunnerSharedState.type
Attributes
- Source
- RunnerSharedState.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
RunnerSharedStateOps.type
Attributes
- Source
- SharedOutLockManager.scala
- Supertypes
-
trait AutoCloseableclass Objecttrait Matchableclass Any
Attributes
- Source
- TailManager.scala
- Supertypes
-
trait AutoCloseableclass Objecttrait Matchableclass Any
Attributes
- Source
- TeePrintStream.scala
- Supertypes
-
class PrintStreamtrait Appendableclass FilterOutputStreamclass OutputStreamtrait Flushabletrait Closeabletrait AutoCloseableclass Objecttrait Matchableclass AnyShow all
Logic around the "watch and wait" functionality in Mill: re-run on change, re-run when the user presses Enter, printing status messages, etc.
Logic around the "watch and wait" functionality in Mill: re-run on change, re-run when the user presses Enter, printing status messages, etc.
Attributes
- Source
- Watching.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Watching.type