Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Why Mill? / What Makes Mill Unique #3907

Merged
merged 5 commits into from
Nov 7, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/modules/ROOT/images/unique/IntellijDocs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
@@ -37,6 +37,7 @@
** xref:comparisons/maven.adoc[]
** xref:comparisons/gradle.adoc[]
** xref:comparisons/sbt.adoc[]
** xref:comparisons/unique.adoc[]
* The Mill CLI
** xref:cli/installation-ide.adoc[]
** xref:cli/flags.adoc[]
534 changes: 534 additions & 0 deletions docs/modules/ROOT/pages/comparisons/unique.adoc

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions docs/modules/ROOT/pages/why-mill.adoc
Original file line number Diff line number Diff line change
@@ -2,10 +2,10 @@

Mill is a fast build tool for Java, Scala, and Kotlin. Although the Java
compiler is very fast and the Java language is easy to learn, JVM build tools are
known to be slow and hard to use. Mill tries to offer a better alternative: 2-10x faster
than Maven or Gradle, better IDE support, and extensibility without needing plugins.
This results in time savings due to less time waiting for your build tool, as well as less
time struggling with your build tool, and more time to focus on the actual work you need to do.
known to be slow and hard to use. Mill offers a better alternative: 2-10x faster
than Maven or Gradle on clean compiles, better IDE support, and extensibility without
needing plugins. This results in time savings due to less time waiting for or struggling
with your build tool and more time to focus on the actual work you need to do.

At a first glance, Mill looks like any other build tool. You have build files, you configure
dependencies, you can compile, run, or test your project:
@@ -46,7 +46,7 @@ these advantages are:
meaning less time waiting for your build and more time doing useful work

2. *Ease of Use*: Mill has better IDE support in IntelliJ and VSCode and richer
visualization tools that other tools, to help understand your build and what it is doing
visualization tools than other tools, to help understand your build and what it is doing

3. *Extensibility*: Mill lets you write code or use any published JVM library in your build,
customizing it to your needs without being limited by third-party plugins
@@ -91,7 +91,7 @@ everything in parallel.

* For Maven, parallelism is opt-in via `-T 10`, while for Mill it is enabled by default.
* For Maven, tests and linters are opt-out via the `-D` properties, while in Mill
tests an linters are opt-in
tests and linters are opt-in

Mill sees a significant ~8x speedup over Maven for this benchmark.