mill.scalalib

package mill.scalalib

Scala toolchain containing ScalaModule and other functionality related to building Scala projects on the JVM. Scala.js and Scala-Native toolchains are in mill.scalajslib and mill.scalanativelib respectively.

Attributes

Members list

Type members

Classlikes

trait CrossModuleBase extends ScalaModule, Module[String]

Shared logic between the different kinds of cross-scala-version modules: CrossSbtModule, CrossScalaModule

Shared logic between the different kinds of cross-scala-version modules: CrossSbtModule, CrossScalaModule

Attributes

Source
CrossModuleBase.scala
Supertypes
trait Module[String]
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes

A CrossScalaModule with the SbtModule source file layout: src/main/java, src/test/resources, etc.

A CrossScalaModule with the SbtModule source file layout: src/main/java, src/test/resources, etc.

Attributes

Source
CrossSbtModule.scala
Supertypes
trait Module[String]
trait SbtModule
trait MavenModule
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Self type

A ScalaModule which is suited to be used with mill.api.Cross. It supports additional source directories with the scala version pattern as suffix (src-{scalaversionprefix}), e.g.

A ScalaModule which is suited to be used with mill.api.Cross. It supports additional source directories with the scala version pattern as suffix (src-{scalaversionprefix}), e.g.

  • src
  • src-2.11
  • src-2.12.3

Attributes

Source
CrossScalaModule.scala
Supertypes
trait Module[String]
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all

Adds version range specific sources when mixed-in to a cross module like CrossScalaModule or CrossSbtModule. It is useful when a Scala version specific breaking change requires two implementations of the same code for the cross versions before and after a specific version. For example, migrating to Scala 2.13 it is usually needed to define some version specific code for Scala 2.12- (all the versions less or equal 2.12) and for Scala 2.13+ (all the versions greater or equal to 2.13). Mixing CrossScalaVersionRanges into a CrossScalaModule will automatically add the src-2.13+ and src-2.12-, based on the crossScalaVersion.

Adds version range specific sources when mixed-in to a cross module like CrossScalaModule or CrossSbtModule. It is useful when a Scala version specific breaking change requires two implementations of the same code for the cross versions before and after a specific version. For example, migrating to Scala 2.13 it is usually needed to define some version specific code for Scala 2.12- (all the versions less or equal 2.12) and for Scala 2.13+ (all the versions greater or equal to 2.13). Mixing CrossScalaVersionRanges into a CrossScalaModule will automatically add the src-2.13+ and src-2.12-, based on the crossScalaVersion.

Attributes

Source
CrossScalaVersionRanges.scala
Supertypes
trait Module[String]
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
object Dependency extends Alias

Attributes

Source
aliases.scala
Supertypes
class Alias
class Object
trait Matchable
class Any
Self type
Dependency.type

A ScalaModule intended for defining .jvm/.js/.native submodules It supports additional source directories per platform, e.g. src-jvm/ or src-js/ and can be used inside a CrossScalaModule.Base, to get one source folder per platform per version e.g. src-2.12-jvm/.

A ScalaModule intended for defining .jvm/.js/.native submodules It supports additional source directories per platform, e.g. src-jvm/ or src-js/ and can be used inside a CrossScalaModule.Base, to get one source folder per platform per version e.g. src-2.12-jvm/.

Adjusts the moduleDir and artifactNameParts to ignore the last path segment, which is assumed to be the name of the platform the module is built against and not something that should affect the filesystem path or artifact name

Attributes

Source
PlatformScalaModule.scala
Supertypes
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all

A ScalaModule with sbt compatible directory layout.

A ScalaModule with sbt compatible directory layout.

Attributes

Source
SbtModule.scala
Supertypes
trait MavenModule
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes

Core configuration required to compile a single Scala module

Core configuration required to compile a single Scala module

Attributes

Source
ScalaModule.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
Self type

Attributes

Source
aliases.scala
Supertypes
class Alias
class Object
trait Matchable
class Any
Self type
trait UnidocModule extends ScalaModule

Mix this in to any ScalaModule to provide a unidocSite task that can be used to build a unified scaladoc site for this module and all of its transitive dependencies

Mix this in to any ScalaModule to provide a unidocSite task that can be used to build a unified scaladoc site for this module and all of its transitive dependencies

Attributes

Source
UnidocModule.scala
Supertypes
trait ScalaModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all

Exports

Defined exports

final val Assembly: Assembly
Exported from javalib

Attributes

Source
exports.scala
final type Assembly = Assembly
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
final type BomModule = BomModule
Exported from javalib

Attributes

Source
exports.scala
final val BoundDep: BoundDep
Exported from javalib

Attributes

Source
exports.scala
final type BoundDep = BoundDep
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
final val Dep: Dep
Exported from javalib

Attributes

Source
exports.scala
final type Dep = Dep
Exported from javalib

Attributes

Source
exports.scala
final type DepSyntax = DepSyntax
Exported from package$

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
final val JavaModule: JavaModule
Exported from javalib

Attributes

Source
exports.scala
final type JavaModule = JavaModule
Exported from javalib

Attributes

Source
exports.scala
final type JlinkModule = JlinkModule
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
final val Lib: Lib
Exported from javalib

Attributes

Source
exports.scala
final type MavenModule = MavenModule
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
final val RunModule: RunModule
Exported from javalib

Attributes

Source
exports.scala
final type RunModule = RunModule
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
final val TestModule: TestModule
Exported from javalib

Attributes

Source
exports.scala
final type TestModule = TestModule
Exported from javalib

Attributes

Source
exports.scala
final val TestModuleUtil: TestModuleUtil
Exported from javalib

Attributes

Source
exports.scala
Exported from javalib

Attributes

Source
exports.scala
implicit lazy val activationFormat: ReadWriter[Activation]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val activationOsFormat: ReadWriter[Os]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val attrFormat: ReadWriter[Attributes]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val bomDepFormat: ReadWriter[BomDependency]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val classifierFormat: ReadWriter[Classifier]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val configurationFormat: ReadWriter[Configuration]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val depFormat: ReadWriter[Dependency]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val depMgmtKeyFormat: ReadWriter[Key]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val depMgmtValuesFormat: ReadWriter[Values]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val exclusionDataFormat: ReadWriter[ExclusionData]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val extensionFormat: ReadWriter[Extension]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val infoDeveloperFormat: ReadWriter[Developer]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val infoFormat: ReadWriter[Info]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val infoLicenseFormat: ReadWriter[License]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val infoScmFormat: ReadWriter[Scm]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val logLevelRW: ReadWriter[LogLevel]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val minimizedExclusionsFormat: ReadWriter[MinimizedExclusions]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
final val mirrors: mirrors
Exported from JsonFormatters

Attributes

Source
exports.scala
implicit lazy val modFormat: ReadWriter[Module]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val modNameFormat: ReadWriter[ModuleName]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val orgFormat: ReadWriter[Organization]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val overridesFormat: ReadWriter[Overrides]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val profileFormat: ReadWriter[Profile]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val projectFormat: ReadWriter[Project]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val publicationFormat: ReadWriter[Publication]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val snapshotVersionFormat: ReadWriter[SnapshotVersion]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val snapshotVersioningFormat: ReadWriter[SnapshotVersioning]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val typeFormat: ReadWriter[Type]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val variantFormat: ReadWriter[Variant]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val variantMatcherFormat: ReadWriter[VariantMatcher]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val variantSelectorFormat: ReadWriter[VariantSelector]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionConstraintFormat: ReadWriter[VersionConstraint]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionFormat: ReadWriter[Version]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionFormat0: ReadWriter[Version]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionInternalFormat: ReadWriter[VersionInterval]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionIntervalFormat0: ReadWriter[VersionInterval]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionsDateTimeFormat: ReadWriter[DateTime]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala
implicit lazy val versionsFormat: ReadWriter[Versions]
Exported from JsonFormatters

Attributes

Source
JsonFormatters.scala