Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | ability to run multiple tasks via bash/zsh braces expansion (#104) fixes #31 | Nikolay Tatarinov | 2018-01-10 | 5 | -49/+415 |
| | |||||
* | Tidy up `Cross` implementation | Li Haoyi | 2018-01-08 | 1 | -37/+24 |
| | |||||
* | Simplify `Evaluator.Mapping` and consolidate logic within the `Segments` ↵ | Li Haoyi | 2018-01-08 | 17 | -102/+105 |
| | | | | data-type | ||||
* | Consolidate `Cross` and `CrossModule`, eliminate now-unused ↵ | Li Haoyi | 2018-01-08 | 7 | -200/+33 |
| | | | | `map`/`flatMap`/`filter` APIs | ||||
* | Swap over to a new, concise `CrossModule[T](..cases)` macro syntax that ↵ | Li Haoyi | 2018-01-07 | 5 | -66/+76 |
| | | | | automatically propagates the `ctx` for you | ||||
* | Generate the `Segments` list at definition time rather than discovery time, ↵ | Li Haoyi | 2018-01-07 | 18 | -270/+217 |
| | | | | | | | | 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 | ||||
* | Break out `Module.scala` from `Task.scala` | Li Haoyi | 2018-01-07 | 7 | -65/+69 |
| | |||||
* | Get `--help` working | Li Haoyi | 2018-01-07 | 1 | -2/+16 |
| | |||||
* | Remove `--repl` flag, running `mill` without a task selector now drops you ↵ | Li Haoyi | 2018-01-07 | 1 | -11/+3 |
| | | | | into a REPL just like SBT | ||||
* | First pass at implicitly propagating a `def basePath: Path` up the `Module` ↵ | Li Haoyi | 2018-01-07 | 14 | -99/+190 |
| | | | | | | | | 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 | ||||
* | Forward bulk output to `stderr` when `--show` is called, reserving `stdout` ↵ | Li Haoyi | 2018-01-05 | 7 | -35/+92 |
| | | | | for the shown JSON blob | ||||
* | First pass at a ticker-based progress logger to reduce the spamminess of the ↵ | Li Haoyi | 2018-01-04 | 6 | -25/+99 |
| | | | | console | ||||
* | tweak cross pprinter | Li Haoyi | 2018-01-03 | 1 | -1/+1 |
| | |||||
* | First pass at providing new pretty-prints for build ↵ | Li Haoyi | 2018-01-03 | 16 | -39/+144 |
| | | | | `Module`s/`Target`s/`Cross`s in the Mill REPL, making use of `sourcecode.*` values captured and definition-site and contextual information made available in the build `Mirror` | ||||
* | Swap over to new `CrossModule` class to simplify the cross module syntax | Li Haoyi | 2018-01-02 | 3 | -1/+6 |
| | |||||
* | Make `--watch` properly handle the case where the evaluator is cached, where ↵ | Li Haoyi | 2018-01-02 | 3 | -44/+52 |
| | | | | previously it would forget the `build.sc` files it was meant to watch | ||||
* | fix-test-compilation | Li Haoyi | 2018-01-01 | 1 | -2/+8 |
| | |||||
* | Fix `idea` project generation, and make `Result.Exception` display the ↵ | Li Haoyi | 2018-01-01 | 5 | -9/+10 |
| | | | | offending stack trace so they're easier to debug | ||||
* | don't fail with match error on empty selector (#98) | Nikolay Tatarinov | 2018-01-01 | 1 | -2/+4 |
| | |||||
* | return non zero return code when task fails in batch mode (#97) | Nikolay Tatarinov | 2018-01-02 | 1 | -1/+2 |
| | |||||
* | = core use NonFatal (#95) | kerr | 2018-01-01 | 1 | -2/+4 |
| | |||||
* | Pipe in stdin and stderr. We still need to figure out a policy for how ↵ | Li Haoyi | 2018-01-01 | 4 | -8/+14 |
| | | | | stderr/stdout map to the various `Logger` levels, but for now this shuts up the integration tests | ||||
* | Silence IntegrationTest stdout | Li Haoyi | 2018-01-01 | 2 | -6/+13 |
| | |||||
* | Split Acyclic/Jawn/BetterFiles tests into their own `integration/` test suite. | Li Haoyi | 2018-01-01 | 3 | -12/+15 |
| | | | | | | Those tests now download a snapshot of the relevant git repo rather than vendoring the files, and use a bare `build.sc` instead of having the build object be included in the test classpath. Tests pass using `sbt integration/test`, but `mill integration.test` still doesn't work | ||||
* | Make sure we properly catch exceptions when a `Task` returning an explicit ↵ | Li Haoyi | 2017-12-31 | 1 | -0/+2 |
| | | | | `Result[T]` instead throws an exception | ||||
* | fix #57 implement eval function to evaluate multiple tasks via repl | rockjam | 2017-12-31 | 2 | -0/+3 |
| | |||||
* | Split out generic `T.input` tasks from the `T.source` helpers, allowing ↵ | Li Haoyi | 2017-12-31 | 4 | -20/+55 |
| | | | | `T.source` to behave as before but `T.input` can be used for other things. Fixes https://github.com/lihaoyi/mill/issues/77 | ||||
* | - Convert `T.source` into a generic `Target` that flushes the cache every time | Li Haoyi | 2017-12-31 | 11 | -76/+138 |
| | | | | | | - Prepare `T.ctx().base: Path` that `Task`s (including `T.source`) can use to find a "default" path for source files. - Simplify `Cacher` | ||||
* | Swap out awkward quasiquotes in `Task` macros in exchange for `reify`/`splice` | Li Haoyi | 2017-12-30 | 2 | -20/+60 |
| | |||||
* | `Core` -> `core`, for consistency with SBT naming schemes | Li Haoyi | 2017-12-30 | 1 | -5/+5 |
| | | | | | | | | `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) | ||||
* | Make use of `T.command`s `T.ctx().dest` in `ScalaPlugin#test.test` and ↵ | Li Haoyi | 2017-12-30 | 5 | -14/+43 |
| | | | | `forkTest`, and allow users to dump the structured JSON test results via `--show` | ||||
* | Re-organize `out/` directory to keep all files related to a particular ↵ | Li Haoyi | 2017-12-29 | 3 | -33/+28 |
| | | | | `Target` within a single folder | ||||
* | Assign different overrides of a Target different cache directories and ↵ | Li Haoyi | 2017-12-29 | 7 | -37/+88 |
| | | | | paths, to fix https://github.com/lihaoyi/mill/issues/86 | ||||
* | Merge pull request #67 from lihaoyi/scalajs | Roman Timushev | 2017-12-29 | 1 | -0/+29 |
|\ | | | | | Scala.js support | ||||
| * | Move TestEvaluator to core | Roman Timushev | 2017-12-29 | 1 | -0/+29 |
| | | |||||
* | | More tidying up in Task | Li Haoyi | 2017-12-29 | 1 | -55/+61 |
|/ | |||||
* | Tidy up Task.scala macros... | Li Haoyi | 2017-12-29 | 2 | -21/+65 |
| | |||||
* | Kill old `LabelledTarget` classes | Li Haoyi | 2017-12-29 | 10 | -95/+65 |
| | |||||
* | WIP Migrating `Target` name/pickler generation from the `Mirror` discovery ↵ | Li Haoyi | 2017-12-29 | 10 | -80/+157 |
| | | | | into the `Target` definitions themselves. Haven't deleted the old/unused `Mirror` data structures yet... | ||||
* | First pass at generating CLI output when you run `Target`s, based on their ↵ | Li Haoyi | 2017-12-28 | 3 | -17/+59 |
| | | | | return values, converted to JSON | ||||
* | Properly propagate failures in task evaluation to the ammonite script runner | Li Haoyi | 2017-12-28 | 2 | -13/+15 |
| | |||||
* | fix repl flag | Li Haoyi | 2017-12-28 | 1 | -2/+5 |
| | |||||
* | Generate zipmap definitions for higher arities (#81) | Duncan Mak | 2017-12-27 | 3 | -109/+12 |
| | | | | | | | | | | | | | | | | | | | | | | | | * Remove method defns for zipMap/zip that will be generated. The trait Applyer will now extend from ApplyerGenerated which will contain the code-generated definitions. * Script to generate code for Applicative * Generate the zip methods in Target * Generate zip methods in ApplicativeTests * Make sure the full 22-arities are generated * Move code generator into build.sc. Remove generate.sc from directories where code will be generated. * Generate code as part of the SBT also * Properly wire up the test sources * Generate all the code in one place | ||||
* | Slightly simplify `test.sh` matrix and cache more evaluators in ↵ | Li Haoyi | 2017-12-26 | 1 | -16/+0 |
| | | | | `HelloWorldTests`, to try and speed up `test.sh` runs | ||||
* | Simplify `MainRunner` and `RunScript` code | Li Haoyi | 2017-12-26 | 4 | -54/+49 |
| | |||||
* | Greatly simplify `CustomCodeWrapper` | Li Haoyi | 2017-12-26 | 3 | -36/+15 |
| | |||||
* | - Shift `MappingCtx` into a magic `LoaderCtx` `Loader` to avoid circular ↵ | Li Haoyi | 2017-12-26 | 7 | -27/+28 |
| | | | | | | | | 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 | ||||
* | WIP: provide Mapping as a Ctx argument that can be accessed from within ↵ | Li Haoyi | 2017-12-25 | 10 | -33/+45 |
| | | | | Tasks, for usage within `GenIdea` and similar | ||||
* | Refactor `mill.Main` to avoid going through Ammonite's main-method-dispatch ↵ | Li Haoyi | 2017-12-25 | 7 | -184/+297 |
| | | | | system | ||||
* | Remove `Router.scala`, whose changes have been upstreamed into the Ammonite ↵ | Li Haoyi | 2017-12-24 | 6 | -450/+88 |
| | | | | | | master branch Remove the `out/run.sc` entrypoint script, using Ammonite's new `codeWrapper` API to synthesize the necessary wrapper/forwarder objects to substitute it |