summaryrefslogtreecommitdiff
path: root/core/src/main/scala
Commit message (Collapse)AuthorAgeFilesLines
* Swap over to simplified Mill module/source layout from SBT'sLi Haoyi2018-01-2027-2731/+0
| | | | Removes a lot of useless folders and gives us a chance to exercise this simplified layout. Support for the SBT layout is still verified by our integration tests
* Use the classloader that defines the `build.sc` root Module to get a ↵Li Haoyi2018-01-192-2/+8
| | | | classpath signature, to ensure that changes to the root module definition flush caches
* Run Main.main in current process (#115)Minghao Liu2018-01-191-0/+57
| | | | | | | | | | | | | | | | * no message * fix compile * fix compile again * finishing in process running * remove comment * fix bug * fix bug
* Introduce an Ammonite build to our test suiteLi Haoyi2018-01-174-22/+21
|
* Implement downloading/caching of binaries and java-source-folder support to ↵Li Haoyi2018-01-171-0/+26
| | | | make better-files benchmarks compile; fixes https://github.com/lihaoyi/mill/issues/37
* - Collapse `Ctx#segments` and `Ctx#segments0` into one field, instead doing ↵Li Haoyi2018-01-154-12/+18
| | | | the prefix-stripping up-front in `BaseModule`
* Add some test cases for nested target discovery, which also implicitly tests ↵Li Haoyi2018-01-151-3/+3
| | | | nested module discovery
* - Test cases for `basePath` behavior in cross-buildsLi Haoyi2018-01-151-1/+1
| | | | | - Avoid reversing the order of cross values when there are more than one provided - Remove now-duplicate `indirectNestedCross` test case
* Extract out miscellanous mill.define.Module helpers into the millInternal ↵Li Haoyi2018-01-145-70/+84
| | | | namespace
* - Move synthetic SBT projects into `target` folderLi Haoyi2018-01-141-5/+0
| | | | | | - Update readme and `ci/` scripts to refer to new project layout - Remove stale `pprint.log`s
* More fixes for `GenIdea` dealing with nested modulesLi Haoyi2018-01-141-1/+1
|
* Fix GenIdea logic again...Li Haoyi2018-01-145-14/+19
|
* fix-replLi Haoyi2018-01-141-1/+2
|
* more work to get tests passing...Li Haoyi2018-01-143-9/+25
|
* Some tweaks to get tests passing...Li Haoyi2018-01-145-34/+19
|
* Everything seems to compile with new, minimal `Discover` implementation...Li Haoyi2018-01-147-36/+124
|
* `traverse` seems to work, still missing `Command` discoveryLi Haoyi2018-01-132-17/+33
|
* WIP getting rid of `discover/` phase: `core/test:compile` works, but some ↵Li Haoyi2018-01-1313-342/+194
| | | | things still stubbed out with `???`
* Make `Module#reflect` only return instance methodsLi Haoyi2018-01-131-0/+3
|
* Remove targets generation in Mirror, in favor of just using java.reflectLi Haoyi2018-01-137-39/+23
|
* rename OSet -> AggLi Haoyi2018-01-139-72/+72
|
* Migrate most classpath-related code onto `Loose.OSet` abstraction, to ↵Li Haoyi2018-01-139-104/+116
| | | | enforce deduplication
* Allow `Cross`-builds to themselves be `Module`s so you can nest stuff insideLi Haoyi2018-01-121-2/+7
| | | | Also properly propagate `mainClass` into `assembly`
* fix testsLi Haoyi2018-01-121-1/+1
|
* Add some doccommentsLi Haoyi2018-01-123-0/+26
|
* Allow implicit `crossModule()` syntax to automatically find a set of ↵Li Haoyi2018-01-122-4/+27
| | | | cross-coordinates which are compatible with a given implicit resolver
* - Better error reporting in `ReplApplyHandler`Li Haoyi2018-01-122-2/+28
| | | | | - Logger now prints a newline when transitioning to ticker-mode, to avoid over-writing anything on the current line - Consolidate `scalalib.Module` logic around `assemblyClasspath`
* Clean up `Logger.scala` a bitLi Haoyi2018-01-121-32/+16
|
* Properly close file inputstreams after hashing files, and eagerly close ↵Li Haoyi2018-01-111-0/+2
| | | | classloaders used for running tests
* ability to run multiple tasks via bash/zsh braces expansion (#104) fixes #31Nikolay Tatarinov2018-01-103-46/+183
|
* Tidy up `Cross` implementationLi Haoyi2018-01-081-37/+24
|
* Simplify `Evaluator.Mapping` and consolidate logic within the `Segments` ↵Li Haoyi2018-01-0810-74/+74
| | | | data-type
* Consolidate `Cross` and `CrossModule`, eliminate now-unused ↵Li Haoyi2018-01-084-42/+16
| | | | `map`/`flatMap`/`filter` APIs
* Swap over to a new, concise `CrossModule[T](..cases)` macro syntax that ↵Li Haoyi2018-01-073-50/+60
| | | | automatically propagates the `ctx` for you
* Generate the `Segments` list at definition time rather than discovery time, ↵Li Haoyi2018-01-079-231/+184
| | | | | | | | 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 Haoyi2018-01-075-63/+67
|
* Get `--help` workingLi Haoyi2018-01-071-2/+16
|
* Remove `--repl` flag, running `mill` without a task selector now drops you ↵Li Haoyi2018-01-071-11/+3
| | | | into a REPL just like SBT
* First pass at implicitly propagating a `def basePath: Path` up the `Module` ↵Li Haoyi2018-01-074-14/+48
| | | | | | | | 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 Haoyi2018-01-057-35/+92
| | | | for the shown JSON blob
* First pass at a ticker-based progress logger to reduce the spamminess of the ↵Li Haoyi2018-01-046-25/+99
| | | | console
* tweak cross pprinterLi Haoyi2018-01-031-1/+1
|
* First pass at providing new pretty-prints for build ↵Li Haoyi2018-01-038-22/+122
| | | | `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 syntaxLi Haoyi2018-01-023-1/+6
|
* Make `--watch` properly handle the case where the evaluator is cached, where ↵Li Haoyi2018-01-023-44/+52
| | | | previously it would forget the `build.sc` files it was meant to watch
* Fix `idea` project generation, and make `Result.Exception` display the ↵Li Haoyi2018-01-013-7/+8
| | | | offending stack trace so they're easier to debug
* don't fail with match error on empty selector (#98)Nikolay Tatarinov2018-01-011-2/+4
|
* return non zero return code when task fails in batch mode (#97)Nikolay Tatarinov2018-01-021-1/+2
|
* = core use NonFatal (#95)kerr2018-01-011-2/+4
|
* Pipe in stdin and stderr. We still need to figure out a policy for how ↵Li Haoyi2018-01-014-8/+14
| | | | stderr/stdout map to the various `Logger` levels, but for now this shuts up the integration tests