summaryrefslogtreecommitdiff
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
...
* Add some basic tests for failure/exception handling during evaluation...Li Haoyi2017-11-182-2/+94
|
* Move graph algorithms on tasks into `define/Graph.scala`, and move ↵Li Haoyi2017-11-184-94/+103
| | | | `GraphTests.scala` into `define/` as well
* Move some test cases that are testing `mill/discover/` code, into that packageLi Haoyi2017-11-183-79/+107
|
* Add basic unit tests for `T.command` discoveryLi Haoyi2017-11-181-1/+43
|
* Force compile errors for missing implicits in `Discovered` materialization ↵Li Haoyi2017-11-184-9/+53
| | | | to point at their source methods, for easier fixing
* Inject logging callback into Evaluator, so we can silence the logging in our ↵Li Haoyi2017-11-186-100/+36
| | | | unit tests
* Organize `core/test`s into subfoldersLi Haoyi2017-11-1812-113/+108
|
* Tweak implicits to make `build.sc` pass againLi Haoyi2017-11-184-16/+47
|
* Tweak `OSet` to avoid re-creating the `.items` Vector for every operation, ↵Li Haoyi2017-11-186-14/+17
| | | | making `.items` a lightweight Iterator and forcing users to use `.indexed` if they explicitly need an indexed sequence
* First pass at managing failures in the evaluation graph now works. Tweaked ↵Li Haoyi2017-11-188-61/+101
| | | | the `JavaCompileJarTests` to make use of it, but still need to write a proper unit test suite
* Tighten up `LabelledTarget` to contain a `Target[T]` instead of a `Task[T]`Li Haoyi2017-11-187-33/+46
|
* Refactor `Evaluator` implementation to reduce the number of "unsafe" map lookupsLi Haoyi2017-11-181-50/+44
|
* Implement `T.persistent{}` targets, which have their dest directory persist ↵Li Haoyi2017-11-185-15/+41
| | | | between runs so the task implementation can use it as a cache
* Silence warningsLi Haoyi2017-11-181-68/+85
|
* CleanupLi Haoyi2017-11-188-101/+116
|
* Add commentsLi Haoyi2017-11-182-8/+23
|
* Extract out shared `Hierarchy.traverse` function for walking `Hierarchy` treeLi Haoyi2017-11-186-46/+65
|
* Tests appear to pass using the new `Hierarchy`-first `Discovered` data formatLi Haoyi2017-11-175-150/+155
|
* Flesh out a principled implementation of the cross-build monadLi Haoyi2017-11-162-98/+137
|
* interpreter-based `Cross` seems to workLi Haoyi2017-11-162-47/+99
|
* Vendor `com.lihaoyi:acyclic` codebase as a cross-building example, first ↵Li Haoyi2017-11-168-15/+80
| | | | non-working experiments in cross building working...
* remove hashing printlnLi Haoyi2017-11-151-1/+0
|
* Allow opting in to faster/sloppier `PathRef` signatures using mtime + ↵Li Haoyi2017-11-151-10/+20
| | | | | | filesize instead of md5ing the file body. Used for third-party dependencies (which are large jars but shouldn't change often) this speeds up the no-op `mill run ScalaPlugin.compile` by about a quarter
* Strip out `play-json` dependency in favor of `upickle`, which we are forced ↵Li Haoyi2017-11-157-66/+40
| | | | to use anyway due to Ammonite. Saves us from classloading play-json and Jackson, shaving off a few hundred ms from the cold no-op runtime
* Properly time entire main methodLi Haoyi2017-11-151-4/+10
|
* First pass at cleaning up `build.sc` file syntaxLi Haoyi2017-11-151-12/+91
|
* Avoid compiling code just to get access to compiled code output pathsLi Haoyi2017-11-151-7/+12
|
* First pass at an `assembly` task now works, rudimentary but enough to be ↵Li Haoyi2017-11-142-4/+57
| | | | used metacircularly
* Add namespace hierarchy discovery to the `Discovered` macro, in preparation ↵Li Haoyi2017-11-124-13/+44
| | | | for IntelliJ support
* Tests are passing under the new group evaluation modelLi Haoyi2017-11-125-131/+132
|
* Clean up `mill.Main`Li Haoyi2017-11-124-31/+33
|
* Rename out `Task.path` to `Task.source`, use it more aggressively to get ↵Li Haoyi2017-11-127-56/+67
| | | | `amm -w` watch-n-rebuild functionality working on `build.sc`
* Ensure `Evaluator` can handle the case where you have more than one terminal ↵Li Haoyi2017-11-122-19/+53
| | | | nodes on the boundary between two groups, *and* one of the terminal nodes depends on another
* cleanup `build.sc` importsLi Haoyi2017-11-111-0/+2
|
* `T{}` blocks can now be implicitLi Haoyi2017-11-113-3/+14
|
* - Smoothed out syntax for defining ivy dependenciesLi Haoyi2017-11-112-49/+57
| | | | - Made `build.sc` file directly runnable using Ammonite, without any wrapper
* .Li Haoyi2017-11-111-3/+1
|
* Properly merge groups in `groupAroundNamedTargets` to handle cases where a ↵Li Haoyi2017-11-114-5/+28
| | | | group has multiple terminals
* - Give `Target`s nicer `toString`s using `sourcecode.Enclosing`. Still not ↵Li Haoyi2017-11-118-18/+57
| | | | | | | | | | as good as the `Labeling` they get during evaluation, but better than nothing - Split out `TargetImpl` from `Target`, so we can make our dummy `TestUtils.Test` class implement `Target`s for discoverability etc. - Make `Discovered` only discover `Target`s, not `Task`s - Make `groupAroundNamedTargets` properly sort the groups topologically, and by flexible enough to combine groups which have cycles between them.
* Swap over to new `projectDeps` mechanism for defining dependencies between ↵Li Haoyi2017-11-115-4/+5
| | | | various `scalaplugin.Subproject`s
* First sketch at SBT test integration worksLi Haoyi2017-11-111-83/+69
|
* rename forge -> millLi Haoyi2017-11-1028-106/+106
|
* Add basic tests for un-cached evaluation of `Task`sLi Haoyi2017-11-104-42/+114
|
* Kill `Router.main` annotation and make routing dependent on the `Command` ↵Li Haoyi2017-11-101-2/+1
| | | | return type
* Migrate over to the new `Task`/`Target`/`Command` splitLi Haoyi2017-11-0917-245/+265
|
* Move `JavaCompilerJarTests` over to new `Target.ctx()` syntaxLi Haoyi2017-11-092-31/+10
|
* Make `Applicative` macros able to inject a configurable `Ctx` object, used ↵Li Haoyi2017-11-093-25/+60
| | | | in `Target` to inject the `dest` folder for the `T{...}` block to use
* make scalaplugin.Subproject use the builtin destination folderLi Haoyi2017-11-092-3/+4
|
* Swap `compileScala` over to `T{...}` macroLi Haoyi2017-11-081-2/+0
|
* Include consistency check in main workflowLi Haoyi2017-11-071-28/+34
|