summaryrefslogtreecommitdiff
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* optimize output streaming to allow batch writesLi Haoyi2018-05-221-16/+50
|
* Fixed PathRef's FileVisitor IOException on dir symlinks.Robby2018-04-241-0/+2
|
* Make builds able to depend on external projects (#291)Olivier Mélois2018-04-184-6/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Make builds able to depend on external projects Builds are now able to load external projects and depend on them as if they were local submodules. `import $file.external.path.build` * Disambiguate "dest" for foreign modules. * Calling modules loaded from external directories "Foreign" to avoid conflicting with the already existing concept of "ExternalModule". * Amended the way `dest` is computed for foreign modules * Added tests to check that the source paths and dest are as expected * Added a test to show that local modules do not conflict with foreign modules when they are named the same * WIP windows build fail * Added bootstrapping step in CYGWIN CI job * * Revert externalOutPath deletion * Add documentation for foreign-modules * reverting appveyor changes * Disabling Foreign modules tests against Java9 See https://github.com/lihaoyi/mill/issues/302
* rename Cached#v -> valueLi Haoyi2018-04-101-2/+2
|
* share com.sun.jna.platform.win32.Kernel32 class between all classloaders, ↵Li Haoyi2018-04-091-2/+8
| | | | because initializing it more than once within a single process causes crashes
* mergeLi Haoyi2018-04-082-4/+15
|\
| * Adds test for client -> server map propagationOlivier Melois2018-04-051-1/+5
| | | | | | | | | | | | | | | | | | * Moved the `System.getenv` side effect to the end of the world * Adds a test to make sure that the `Map[String, String]` gets propagated correctly * Adds a `Ctx.Env` trait for consistency https://github.com/lihaoyi/mill/issues/257
| * Adds envVars propagation client -> serverOlivier Melois2018-03-292-3/+10
| | | | | | | | | | | | | | | | | | | | Since Mill now executes in a long-lived JVM, the builds do not have a chance to use environment variables as inputs. This propagates the environment variables from the client all the way down to the context available to the tasks as a `Map[String, String]` so that they can be used as inputs should the user choose to do so. https://github.com/lihaoyi/mill/issues/257
* | - Add `mill version` commandLi Haoyi2018-04-061-3/+3
| | | | | | | | - Make `Evaluator` robust against `null` results
* | fix buildLi Haoyi2018-03-311-1/+1
|/
* Windows client/server improvements (#262)Robby2018-03-291-6/+1
|
* bump ammonite version to fix https://github.com/lihaoyi/mill/issues/184Li Haoyi2018-03-282-5/+7
|
* Upgrade Ammonite to 1.1.0-3-73d5734.Robby2018-03-261-1/+1
|
* Merge branch 'master' of github.com:lihaoyi/millLi Haoyi2018-03-251-15/+53
|\
| * try to fix classloading issues on runLocal and test with java 9 (#255)Nikolay Tatarinov2018-03-251-15/+53
| | | | | | | | | | | | | | | | | | | | * fix class loading for inprocess in java 9 * always add rt jar in case of java 9 * move all custom classloading logic into mill.util.ClassLoader * add comments explaining parent class loader changes and comment in tests pointing to original issue
* | wip upgrading to the new version of upickleLi Haoyi2018-03-244-44/+41
|/
* allow '-' char to be in cross selectorsrockjam2018-03-201-1/+1
|
* mergeLi Haoyi2018-03-193-6/+22
|\
| * Java 9 optimization by caching rt.jar (#239)Robby2018-03-193-6/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Upgraded Ammonite to 1.0.5-7-f032887 that includes a Java 9 performance optimization for mill's client-server mode (lihaoyi/Ammonite#773). * Java 9 optimization for interactive mode by caching rt.jar. * Refactored based on @lihaoyi's comments on #239. * Removed client side rt.jar caching. * Propagatio of home path from Cli. * Propagation, propagation, propagation!
* | properly pass arguments to forked tests in a way that doesn't botch whitespacesLi Haoyi2018-03-181-0/+2
|/
* Fixes for non-interactive (client/server) mode on Java 9 (#221)Robby2018-03-131-2/+9
| | | | | | * Fixes for client/server mode on Java 9. * Upgraded ammonite to 1.0.5-4-c0cdbaf.
* Changes to make {clientserver,main,scalalib,scalajslib}.test work under Java ↵Robby2018-03-101-0/+12
| | | | | | | | | | 9 (#217) * Append "exported rt.jar" when creating URLClassLoader. * Disabled tests involving Scala 2.10 & 2.11 and nashorn. * Use java.net.URLClassLoader.
* Mill now generates an `out/mill-profile.json` file containing task-timings, toLi Haoyi2018-03-041-7/+29
| | | | make it easier to see where your mill evaluation time is going
* Introduced the `mill plan foo.bar` command, which shows you what the ↵Li Haoyi2018-03-041-39/+43
| | | | execution plan of running the `foo.bar` task looks like without actually evaluating it.
* Split overriden enclosing path on `#` in addition to `.`, since `#` behaves ↵Li Haoyi2018-03-031-1/+1
| | | | badly in URIs and other places
* Split out `upstreamAssembly` from `assembly`Li Haoyi2018-03-033-19/+37
| | | | Also re-write `Jvm.createAssembly` to allow incremental assembly construction. This should allow much faster assembly creation in the common case where upstream dependencies do not change
* Lazily create `dest` folders, `log` files and `OuterStack` traces only as ↵Li Haoyi2018-02-252-13/+13
| | | | | | necessary. Now we only create them if a Task asks for `T.ctx().dest` or logs something. The vast majority of tasks just do plumbing and neither log output nor create files in `dest`, and this avoids the unnecessary overhead of creating all those un-used files, folders & stack trace
* A few attempts at micro-optimizing the current hot spotsLi Haoyi2018-02-254-23/+36
|
* cache hashCodes as part of meta.json to avoid needlessly re-hashing thingsLi Haoyi2018-02-251-48/+39
|
* Save the signature of a `PathRef` to avoid re-stating files every time they ↵Li Haoyi2018-02-252-47/+64
| | | | are de-serialized
* better error messages when you run interactive commands without -iLi Haoyi2018-02-241-0/+5
|
* Clean up the provisional client-server code with unit tests and proper ↵Li Haoyi2018-02-242-7/+18
| | | | | | | | file-sockets Seems to work well enough for interactive scala consoles, though still not Ammonite Also Added ScalaModule#launcher and re-worked our build.sc file to use it
* fix-testsLi Haoyi2018-02-211-1/+0
|
* First pass at cleaning up evaluator caching systemLi Haoyi2018-02-201-2/+5
|
* Improve error reporting for NamedTasks with the wrong number of parametersLi Haoyi2018-02-192-3/+25
|
* Update resolution tests in `MainTests.scala`Li Haoyi2018-02-171-1/+1
| | | | Added test cases for new "Did you mean...", "Try `mill.resolve ...`" hints
* WIP getting tests passing againLi Haoyi2018-02-171-1/+3
|
* Avoid printing unnecessary newlines in `Logger`Li Haoyi2018-02-171-28/+48
| | | | Often the main output stream already ends with a newline, so only print a newline in the case where it hasn't
* fix docsLi Haoyi2018-02-101-2/+2
|
* - DRY up `Resolve.scala`Li Haoyi2018-02-091-2/+4
| | | | | - Add a version of `Resolve` that resolves names only, but works on entrypoints/etc. without needing arguments - Fix tests to compile with new `multiSelect` parsing flag
* Parse args directly in MainModule commands to allow for ``--all`-style ↵Li Haoyi2018-02-093-34/+26
| | | | argument parsing
* get rid of external watch flagLi Haoyi2018-02-091-8/+7
|
* .Li Haoyi2018-02-0945-3646/+51
|
* vendor ammonite.main code so we can properly handle arity-0 CLI args, fix ↵Li Haoyi2018-02-0820-168/+490
| | | | GenIdea by making it take an Evaluator as an argument
* wipLi Haoyi2018-02-0713-40/+513
|
* attempt to fix publishAllLi Haoyi2018-02-079-25/+48
|
* .Li Haoyi2018-02-062-2/+3
|
* Merge branch 'master' of github.com:lihaoyi/millLi Haoyi2018-02-063-4/+2
|\
| * fix introspection of children on console (eg build) (#128)ajrnz2018-02-061-2/+2
| | | | | | this used to work but stopped, I guess, after some on segments
* | all T.commands to take targets as CLI arguments, and use that to get rid of ↵Li Haoyi2018-02-064-17/+66
|/ | | | our custom releaseCI/releaseManual commands