| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
- Update `build.sc`, `build.sbt` and `ci/` scripts
|
| |
|
| |
|
| |
|
|
|
|
| |
enforce deduplication
|
|
|
|
| |
`map`/`flatMap`/`filter` APIs
|
|
|
|
| |
automatically propagates the `ctx` for you
|
|
|
|
|
|
|
|
| |
by propagating implicits throughout the tree of nested `mill.Module`s
This currently adds some annoying boilerplate to the definition of cross/abstract modules, which can probably be removed using Macros.
The `Segments` mapping generated by discovery is still present and used in a few places, though it will be removed
|
|
|
|
| |
making changes within them get picked up by the file-watching `~compile`/`~test` commands
|
|
|
|
|
|
|
|
| |
hierarchy, which each module receives and extends.
One constraint is that now must define your abstract modules as `trait`s rather than `class`es, or otherwise add an implicit `ctx: ModuleCtx` parameter to your class definition.
So far this lets us remove some explicit `basePath` definitions in `build.sc`. Proper handling of `basePath` in `CrossModule`s is future work
|
|
|
|
|
|
| |
- Prepare `T.ctx().base: Path` that `Task`s (including `T.source`) can use to find a "default" path for source files.
- Simplify `Cacher`
|
|
`ScalaPlugin` -> `scalalib`, to avoid confusion with Scala compiler plugins
`ScalaModule` -> `module`, to be used via `scalalib.Module`, avoid unnecessary duplication in th name prefix
`plugin` -> `moduledefs`, to more accurately describe what it does (since it includes `Cacher` as well)
|