summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' of github.com:lihaoyi/millLi Haoyi2017-12-2020-33/+798
|\
| * Add Sonatypype publishing;rockjam2017-12-2020-276/+630
| | | | | | | | now you can publish your module with `mill run MyModule.publish --credentials $SONATYPE_CREDENTIALS --gpgPassphrase $GPG_PASSPHRASE`
| * publishLocal - looks like it worksdos652017-12-2011-12/+369
| |
| * Report errors when dependency resolution fails (#71)Grant2017-12-185-22/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* | Remove implicit `Discovered.apply[T]` method. This forces people to pass ↵Li Haoyi2017-12-2020-178/+185
|/ | | | around their generated `Discovered.make` structures by hand, making it harder to accidentally generate the same `Discovered` twice and slow down runtime/compilation
* - Swap `Task.traverse` implementation to match behavior of other `traverse` ↵Li Haoyi2017-12-184-21/+39
| | | | | | | | 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
* - Remove `GenIdea` dependency on compiled output (fixes ↵Li Haoyi2017-12-171-3/+4
| | | | | | https://github.com/lihaoyi/mill/issues/59) - Add missing flag to fix downloading of source jars for IntelliJ
* bump ammonite version in build.sbtLi Haoyi2017-12-171-1/+1
|
* Bump Ammonite version in `build.sc` to fix upickle bugLi Haoyi2017-12-173-39/+38
| | | | Move `assembly`/`releaseAssembly` targets out of the stub `ScalaModule`, to take advantage of the new top-level `Target` support
* fix build.sc to build itself with newer version of ammonite (#70)Nikolay Tatarinov2017-12-172-3/+8
|
* Allow top-level targets in build files by configuring Ammonite's ↵Li Haoyi2017-12-162-17/+38
| | | | `codeWrapper` to inherit from `mill.Module`
* bump ammonite versionLi Haoyi2017-12-161-2/+1
|
* upgrade to new version of uPickle/AmmoniteLi Haoyi2017-12-167-25/+31
|
* remove unused MILL_COMPILER_PLUGIN flagLi Haoyi2017-12-152-4/+2
|
* Ensure `ScalaModule#resources` files are properly propagated through ↵Li Haoyi2017-12-151-1/+1
| | | | classpath of downstream modules, so they appear in downstream `assembly`s. Necessary to make `AutoOverridePlugin` work in the mill-build mill executable
* First pass at using a compiler plugin to remove the need for the `override` ↵Li Haoyi2017-12-1511-48/+164
| | | | | | | | keyword when overriding a field within a `mill.Module` This only applies to `mill.Module`s, not overrides elsewhere which still require the keyword. `mill.Module`s tend to have lots and lots of overriding, so the keyword is basically noise. Also includes the necessary build changes to enable the locally-built Scalac plugin when compiling the test suite. Note that no changes are necessary for the executable assembly, because the `scalac-plugin.xml` will be included in the assembly and get picked up by the Ammonite scalac plugin classloader automatically
* First pass adding a Jawn build to the test suite. Jawn's own test suite ↵Li Haoyi2017-12-1456-0/+4529
| | | | doesn't run properly for some reason
* Move `Evaluator`s to be long lived, and make tests passLi Haoyi2017-12-1411-53/+73
|
* First pass at implementing long-lived `Worker` objects. These currently are ↵Li Haoyi2017-12-134-16/+70
| | | | | | 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
* Clean up now-unused classloader cachesLi Haoyi2017-12-131-9/+2
|
* Allow `classPathSig` to be injected into `Evaluator`, and in ↵Li Haoyi2017-12-133-16/+20
| | | | | | | | `ReplApplyHandler` keep using the same one every time to avoid busting caches due to REPL commands being added to the classpath Reverts https://github.com/lihaoyi/mill/pull/60, which seems to break `mill.scalaplugin.AcyclicTests.scala2123` (reproducible in master) Tweak `build.sbt` to properly set the forked test working directory in `test-only` as well as `test`
* Merge pull request #66 from lihaoyi/binRoman Timushev2017-12-134-14/+29
|\ | | | | Separate module for Mill binary
| * Skip missing source directoriesRoman Timushev2017-12-131-1/+1
| |
| * Move assemble to a separate moduleRoman Timushev2017-12-133-13/+28
|/
* Do not erase cache for skipped tasks (#60)Roman Timushev2017-12-121-1/+3
|
* Merge pull request #55 from lihaoyi/repl-cacheRoman Timushev2017-12-121-5/+13
|\ | | | | Fix task cache in REPL
| * Cache classloader signaturesRoman Timushev2017-12-121-5/+9
| |
| * Fix task cache in REPLRoman Timushev2017-12-111-3/+7
|/
* Resolve compiler bridge jar (#45)Roman Timushev2017-12-113-11/+34
| | | | | | * Resolve compiler bridge jar * Create a release artifact
* [issue-39] add logging output to file (#53)Ilya Murzinov2017-12-114-19/+78
|
* `Core.compile()` now works in the build REPLLi Haoyi2017-12-106-11/+99
|
* First pass at simplifying Ammonite integration and enabling the REPL. Can ↵Li Haoyi2017-12-103-202/+127
| | | | query for terms like `Core.compile`, but still can't run `Core.compile()`
* Implement a `SbtScalaModule` helper trait, to conveniently set up the ↵Li Haoyi2017-12-105-201/+209
| | | | | | 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
* fix console command; add interactiveSubprocess in Jvm (#52)Nikolay Tatarinov2017-12-092-2/+10
|
* Add support for compiler plugins and enable acyclic plugin in buildTin Pavlinic2017-12-095-3/+28
|
* Update readme.mdLi Haoyi2017-12-081-0/+3
|
* delete un-used bridge.scLi Haoyi2017-12-081-4/+0
|
* robustify gen-idea against pre-existing filesLi Haoyi2017-12-081-1/+1
|
* Merge pull request #38 from lihaoyi/project-deps-zincNikolay Tatarinov2017-12-077-43/+70
|\ | | | | pass compile analysis of projectDeps to zinc
| * pass compile analysis of projectDeps to zinc, fixes #29rockjam2017-12-077-43/+70
|/
* Update self-hosting instructions (#41)Tin Pavlinic2017-12-061-3/+3
|
* Explicitly pass built compiler-bridge jar locations from the build system ↵Li Haoyi2017-12-065-45/+80
| | | | | | | | 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
* Merge branch 'master' of github.com:lihaoyi/millLi Haoyi2017-12-060-0/+0
|\
| * merge cross-bridge into masterLi Haoyi2017-12-0526-155/+371
| |\
* | | force test:compile during scalaplugin/test:assembly, to make sure bridge ↵Li Haoyi2017-12-061-0/+4
| | | | | | | | | | | | jars get build for use by the executable
* | | Hackily speed up repeated Scala compiles by keeping a global cache of hot ↵Li Haoyi2017-12-052-23/+12
| | | | | | | | | | | | ScalaInstance/Classloader instances around between compiles
* | | merge cross-bridge into masterLi Haoyi2017-12-0526-196/+410
|\ \ \ | |/ / |/| / | |/
| * Avoid `inheritIO` in `Jvm.subprocess`, and instead feed it into the proper ↵Li Haoyi2017-12-044-7/+53
| | | | | | | | `log.outputStream`
| * Standardize on a `mill.util.Logger` classLi Haoyi2017-12-0413-54/+76
| |
| * Make more stuff use the implicit `T.ctx()`Li Haoyi2017-12-043-13/+13
| |