| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
`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)
|
|
|
|
| |
`forkTest`, and allow users to dump the structured JSON test results via `--show`
|
|
|
|
| |
`Target` within a single folder
|
| |
|
| |
|
| |
|
|
|
|
| |
jars, since the compiler jars change much less frequently and the code can thus be kept hot rather than being discarded each time
|
|
|
|
|
|
|
|
| |
dependencies between `Ctx` -> `Discovered` -> `Task`
- `mill idea` works now using `GenIdea` as a standalone `T.command` making use of the new contextually-available `Mapping`
- Limit implicit `ReplApplyHandler` to `--repl` only, to avoid it kicking in if `build.sc` scripts are screwed up and adding further confusion
|
|
|
|
| |
Tasks, for usage within `GenIdea` and similar
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| | |
now you can publish your module with `mill run MyModule.publish --credentials $SONATYPE_CREDENTIALS --gpgPassphrase $GPG_PASSPHRASE`
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Report errors when dependency resolution fails
Function `Lib.reolveDependencies` now checks the result of the coursier dependency
resolution for errors. The return value of the fuction is now a
`Result[Seq[PathRef]]` and errors are signaled by returning an instance
of Failure when errors occur while resolving dependencies.
`ScalaModule` now has a new task called `resolve` which allows for
triggering dependency resolution directly from the cmd line like:
`mill run resolve`.
`ResolveDepsTests` was added to verify failed resolution is properly
detected and reported.
* Remove type signatures in ScalaModule.scala
* Updates from PR comments
|
|/
|
|
| |
around their generated `Discovered.make` structures by hand, making it harder to accidentally generate the same `Discovered` twice and slow down runtime/compilation
|
|
|
|
|
|
|
|
| |
implementations, added a `Task.sequence` that does what `traverse` used to do
- Added a `test.sh` script to easily kick off self-hosted unit test runs
- Tweak `ScalaModule` to fall back to the old behavior of including the transitive classpath during compilation
|
|
|
|
|
|
| |
https://github.com/lihaoyi/mill/issues/59)
- Add missing flag to fix downloading of source jars for IntelliJ
|
|
|
|
| |
Move `assembly`/`releaseAssembly` targets out of the stub `ScalaModule`, to take advantage of the new top-level `Target` support
|
| |
|
| |
|
|
|
|
| |
classpath of downstream modules, so they appear in downstream `assembly`s. Necessary to make `AutoOverridePlugin` work in the mill-build mill executable
|
| |
|
|
|
|
|
|
| |
managed by the `Evaluator`, which is now a stateful object that shouldn't be thrown away every time.
We still need to update the code/test-suite to make the `Evaluator` hang around in between `evaluate` calls
|
| |
|
|
|
|
|
|
| |
* Resolve compiler bridge jar
* Create a release artifact
|
|
|
|
|
|
| |
default source/test locations for builds using SBT project layout
Also split out plain-old-Scala-logic in `Lib` from inheritable traits in `ScalaModule`, since `ScalaModule` was getting a bit unwieldy
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
into Mill as JVM properties.
This makes the dependency between the compiler-bridge jar and the Mill executable explicit, allowing us to swap out the locations compiler-bridge jars (which end up in different places, depending on whether you're building with SBT or Mill) or eventually making them load from Maven Central in a "release" Mill executable
Since Mill (and uTest) both do not support SBT-style test arguments, we need to use `forkTest` instead of `test` to run the Mill tests passing the compiler-jar locations as JVM props. This necessitated some fixes to make `forkTest` behave properly
|
|
|
|
| |
ScalaInstance/Classloader instances around between compiles
|
|\ |
|
| |
| |
| |
| | |
`log.outputStream`
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
- Convert `ScalaModule.{compile,assembly}` to use the new implicit `T.ctx()`
- Add a `log: PrintStream` to the `T.ctx()`, in preparation for per-task logging
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
cross-minor-version `AcyclicTests` running using the `mill` test runner
Fixed `Discovered` to only pick up public `Target`s, which makes it skip things like the `super$compile` of an overriden `compile` target.
Split up `sources` and `allSources`
TBD how to properly switch the `compilerBridgeJar` between the different output paths of SBT's compile-dir and Mill's compile-dir, and eventually to a maven-central artifact too
|
| |
| |
| |
| |
| |
| | |
compiler-bridge.jar.
For now just hardcode the Scala versions we want to support as part of the build; we can figure out how to do the runtime download&compile thing later
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
| |
have gone away (???)
- DRY up our dependency resolution code in `ScalaModule` with a `resolveDeps` helper
- Separate `scalaCompilerClasspath` from `compileClasspath`, and only pass `scalaCompilerClasspath` to the Zinc classloader
|
| |
|
|
|
|
| |
metadata.mill.json invalidation bug
|
|
|
|
| |
directory, but only when run alone (???)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Bust caches when the build itself has changed.
Use the Ammonite classloader to check if the classpath has changed
Fix #7
* Cleaner logging of Zinc activities.
Removed printlns and bumped up the Zinc log level to Info. This show the nice `Compiling <n> Scala sources` messages, and the useless `Done compiling` line at the end.
|