Contrib Plugins
The plugins in this section are hosted in the Mill git tree and developed / maintained by the community.
For details about including plugins in your build.mill
read Using Mill Plugins.
When using one of these contribution modules, it is important that the versions you load match your mill version.
To facilitate this, Mill will automatically replace the For instance:
or
|
Importing Contrib Modules
package build
import mill._, scalalib._
import $ivy.`com.lihaoyi::mill-contrib-buildinfo:`
import mill.contrib.buildinfo.BuildInfo
object foo extends ScalaModule with BuildInfo {
def scalaVersion = "2.13.10"
def buildInfoPackageName = "foo"
def buildInfoMembers = Seq(
BuildInfo.Value("scalaVersion", scalaVersion())
)
}
This example illustrates usage of Mill contrib
plugins. These are Mill
plugins contributed by Mill user that are maintained within the Mill
repo, published under mill-contrib-*
.
> mill foo.run
...
foo.BuildInfo.scalaVersion: 2.13.10
Contrib modules halfway between builtin Mill modules and Third-party Plugins:
-
Like builtin modules, contrib modules are tested and released as part of Mill’s own CI process, ensuring there is always a version of the plugin compatible with any Mill version
-
Like third-party plugins, contrib modules are submitted by third-parties, and do now maintain the same binary compatibility guarantees of Mill’s builtin comdules