summaryrefslogtreecommitdiff
path: root/core/src/test
Commit message (Collapse)AuthorAgeFilesLines
* Swap over to simplified Mill module/source layout from SBT'sLi Haoyi2018-01-2021-1960/+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
* - Collapse `Ctx#segments` and `Ctx#segments0` into one field, instead doing ↵Li Haoyi2018-01-152-24/+16
| | | | the prefix-stripping up-front in `BaseModule`
* Add some test cases for nested target discovery, which also implicitly tests ↵Li Haoyi2018-01-153-5/+64
| | | | nested module discovery
* - Test cases for `basePath` behavior in cross-buildsLi Haoyi2018-01-153-70/+56
| | | | | - 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-142-3/+3
| | | | namespace
* Some tweaks to get tests passing...Li Haoyi2018-01-141-4/+2
|
* Everything seems to compile with new, minimal `Discover` implementation...Li Haoyi2018-01-141-18/+23
|
* `traverse` seems to work, still missing `Command` discoveryLi Haoyi2018-01-131-2/+4
|
* WIP getting rid of `discover/` phase: `core/test:compile` works, but some ↵Li Haoyi2018-01-1312-428/+64
| | | | things still stubbed out with `???`
* Make `Module#reflect` only return instance methodsLi Haoyi2018-01-132-4/+4
|
* rename OSet -> AggLi Haoyi2018-01-138-112/+112
|
* Migrate most classpath-related code onto `Loose.OSet` abstraction, to ↵Li Haoyi2018-01-138-10/+15
| | | | enforce deduplication
* fix testsLi Haoyi2018-01-121-2/+2
|
* ability to run multiple tasks via bash/zsh braces expansion (#104) fixes #31Nikolay Tatarinov2018-01-102-3/+232
|
* Simplify `Evaluator.Mapping` and consolidate logic within the `Segments` ↵Li Haoyi2018-01-087-28/+31
| | | | data-type
* Consolidate `Cross` and `CrossModule`, eliminate now-unused ↵Li Haoyi2018-01-083-158/+17
| | | | `map`/`flatMap`/`filter` APIs
* Swap over to a new, concise `CrossModule[T](..cases)` macro syntax that ↵Li Haoyi2018-01-072-16/+16
| | | | automatically propagates the `ctx` for you
* Generate the `Segments` list at definition time rather than discovery time, ↵Li Haoyi2018-01-079-39/+33
| | | | | | | | 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-072-2/+2
|
* First pass at implicitly propagating a `def basePath: Path` up the `Module` ↵Li Haoyi2018-01-0710-85/+142
| | | | | | | | 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
* First pass at providing new pretty-prints for build ↵Li Haoyi2018-01-038-17/+22
| | | | `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`
* fix-test-compilationLi Haoyi2018-01-011-2/+8
|
* Fix `idea` project generation, and make `Result.Exception` display the ↵Li Haoyi2018-01-012-2/+2
| | | | offending stack trace so they're easier to debug
* Split out generic `T.input` tasks from the `T.source` helpers, allowing ↵Li Haoyi2017-12-312-6/+6
| | | | `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 timeLi Haoyi2017-12-315-15/+18
| | | | | | - Prepare `T.ctx().base: Path` that `Task`s (including `T.source`) can use to find a "default" path for source files. - Simplify `Cacher`
* Make use of `T.command`s `T.ctx().dest` in `ScalaPlugin#test.test` and ↵Li Haoyi2017-12-301-1/+1
| | | | `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 Haoyi2017-12-291-2/+2
| | | | `Target` within a single folder
* Assign different overrides of a Target different cache directories and ↵Li Haoyi2017-12-294-3/+22
| | | | paths, to fix https://github.com/lihaoyi/mill/issues/86
* Move TestEvaluator to coreRoman Timushev2017-12-291-0/+29
|
* Tidy up Task.scala macros...Li Haoyi2017-12-291-1/+1
|
* Kill old `LabelledTarget` classesLi Haoyi2017-12-296-30/+28
|
* WIP Migrating `Target` name/pickler generation from the `Mirror` discovery ↵Li Haoyi2017-12-295-39/+58
| | | | into the `Target` definitions themselves. Haven't deleted the old/unused `Mirror` data structures yet...
* Generate zipmap definitions for higher arities (#81)Duncan Mak2017-12-271-34/+3
| | | | | | | | | | | | | | | | | | | | | | | | * 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
* WIP: provide Mapping as a Ctx argument that can be accessed from within ↵Li Haoyi2017-12-254-5/+5
| | | | Tasks, for usage within `GenIdea` and similar
* Refactor `mill.Main` to avoid going through Ammonite's main-method-dispatch ↵Li Haoyi2017-12-251-1/+1
| | | | system
* Remove `Router.scala`, whose changes have been upstreamed into the Ammonite ↵Li Haoyi2017-12-241-3/+3
| | | | | | 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
* Allow Target creation from Result[T] (#79)Roman Timushev2017-12-241-0/+7
|
* Merge branch 'master' of github.com:lihaoyi/millLi Haoyi2017-12-201-0/+3
|\
| * Add Sonatypype publishing;rockjam2017-12-202-1/+4
| | | | | | | | now you can publish your module with `mill run MyModule.publish --credentials $SONATYPE_CREDENTIALS --gpgPassphrase $GPG_PASSPHRASE`
| * publishLocal - looks like it worksdos652017-12-201-1/+1
| |
* | Remove implicit `Discovered.apply[T]` method. This forces people to pass ↵Li Haoyi2017-12-2010-109/+113
|/ | | | around their generated `Discovered.make` structures by hand, making it harder to accidentally generate the same `Discovered` twice and slow down runtime/compilation
* upgrade to new version of uPickle/AmmoniteLi Haoyi2017-12-162-1/+2
|
* First pass at using a compiler plugin to remove the need for the `override` ↵Li Haoyi2017-12-151-1/+14
| | | | | | | | 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
* Move `Evaluator`s to be long lived, and make tests passLi Haoyi2017-12-142-17/+24
|
* `Core.compile()` now works in the build REPLLi Haoyi2017-12-101-2/+2
|
* First pass at simplifying Ammonite integration and enabling the REPL. Can ↵Li Haoyi2017-12-101-1/+1
| | | | query for terms like `Core.compile`, but still can't run `Core.compile()`
* Add support for compiler plugins and enable acyclic plugin in buildTin Pavlinic2017-12-091-1/+3
|
* pass compile analysis of projectDeps to zinc, fixes #29rockjam2017-12-071-0/+3
|
* Standardize on a `mill.util.Logger` classLi Haoyi2017-12-044-11/+11
|
* Make more stuff use the implicit `T.ctx()`Li Haoyi2017-12-041-6/+7
|