Skip to content

Commit a11b1df

Browse files
Updated the documentation
1 parent 27fc259 commit a11b1df

File tree

5 files changed

+12
-49
lines changed

5 files changed

+12
-49
lines changed

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,12 @@ vastly improve build times. However, to see these benefits, a project must first
99
tiny packages and make use of fine-grained dependencies. This is not always a realistic short-term
1010
goal for large, monorepo Scala projects.
1111

12-
`lucidsoftware/rules_scala` allows for the optional use of Zinc incremental compilation to provide a
13-
stepping stone for these projects as they migrate to Bazel. Although we've verified it to be correct
14-
and determinisitc, we recommend leaving this disabled, as fine-grained and isolated targets are
15-
more in-line with the [Bazel philosophy](https://bazel.build/basics/hermeticity).
12+
`lucidsoftware/rules_scala` used to allow for the optional use of Zinc incremental compilation to
13+
provide a stepping stone for these projects as they migrate to Bazel. Although we still reuse code
14+
from Zinc and the compiler bridge, this ruleset no longer supports incremental compilation.
15+
Mitigating nondeterminism issues required introducing an enormous amount of complexity to the
16+
compilation worker, and we eventually discovered that supporting incremental compilation added
17+
substantial overhead to compilation times.
1618

1719
`lucidsoftware/rules_scala` is written with maintainability and accessibility in mind. It aims to
1820
facilitate the transition to Bazel, and to satisfy use cases throughout the Scala ecosystem.
@@ -40,7 +42,6 @@ straightforward.
4042
* Errors on indirect and unused dependencies
4143
* Buildozer suggestions for dependency errors
4244
* [Optional Worker strategy](docs/scala.md#workers)
43-
* [Optional Zinc-based stateful incremental compilation](docs/stateful.md#stateful-compilation)
4445
* [Scalafmt](docs/scalafmt.md#scalafmt) integration
4546
* Protobuf support with ScalaPB
4647
* [scala_proto_library](docs/stardoc/scala_proto.md#scala_proto_library)
@@ -49,7 +50,6 @@ straightforward.
4950
* [Customizable rules](docs/newdocs/phases.md#customizing-the-core-rules)
5051
* [Multiple Scala versions in one build](docs/newdocs/scala_versions.md#specifying-the-scala-version-to-use), including Scala 3 (Dotty).
5152
* [Optimal handling of macros and ijars](docs/newdocs/macros.md#macros-and-ijars)
52-
* [Pass flags to Zinc compiler](docs/newdocs/zinc_flags.md)
5353
* Modern implementation using Bazel's most idiomatic APIs
5454

5555
## Usage

docs/newdocs/zinc_flags.md

Lines changed: 0 additions & 18 deletions
This file was deleted.

docs/stardoc/scala.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ Generates Scaladoc.
221221
<pre>
222222
load("@rules_scala_annex//rules:scala.bzl", "make_scala_binary")
223223

224-
make_scala_binary(<a href="#make_scala_binary-extras">extras</a>)
224+
make_scala_binary(<a href="#make_scala_binary-extras">*extras</a>)
225225
</pre>
226226

227227

@@ -241,7 +241,7 @@ make_scala_binary(<a href="#make_scala_binary-extras">extras</a>)
241241
<pre>
242242
load("@rules_scala_annex//rules:scala.bzl", "make_scala_library")
243243

244-
make_scala_library(<a href="#make_scala_library-extras">extras</a>)
244+
make_scala_library(<a href="#make_scala_library-extras">*extras</a>)
245245
</pre>
246246

247247

@@ -261,7 +261,7 @@ make_scala_library(<a href="#make_scala_library-extras">extras</a>)
261261
<pre>
262262
load("@rules_scala_annex//rules:scala.bzl", "make_scala_test")
263263

264-
make_scala_test(<a href="#make_scala_test-extras">extras</a>)
264+
make_scala_test(<a href="#make_scala_test-extras">*extras</a>)
265265
</pre>
266266

267267

docs/stardoc/scala_proto.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ See example use in [/tests/proto/BUILD](/tests/proto/BUILD)
3333
<pre>
3434
load("@rules_scala_annex//rules:scala_proto.bzl", "scala_proto_toolchain")
3535

36-
scala_proto_toolchain(<a href="#scala_proto_toolchain-name">name</a>, <a href="#scala_proto_toolchain-compiler">compiler</a>, <a href="#scala_proto_toolchain-compiler_supports_workers">compiler_supports_workers</a>)
36+
scala_proto_toolchain(<a href="#scala_proto_toolchain-name">name</a>, <a href="#scala_proto_toolchain-compiler">compiler</a>, <a href="#scala_proto_toolchain-compiler_supports_workers">compiler_supports_workers</a>, <a href="#scala_proto_toolchain-protoc">protoc</a>)
3737
</pre>
3838

3939
Specifies a toolchain of the `@rules_scala_annex//rules/scala_proto:compiler_toolchain_type` toolchain type.
@@ -73,7 +73,8 @@ toolchain(
7373
| Name | Description | Type | Mandatory | Default |
7474
| :------------- | :------------- | :------------- | :------------- | :------------- |
7575
| <a id="scala_proto_toolchain-name"></a>name | A unique name for this target. | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required | |
76-
| <a id="scala_proto_toolchain-compiler"></a>compiler | The compiler to use to generate Scala form proto sources | <a href="https://bazel.build/concepts/labels">Label</a> | optional | `None` |
76+
| <a id="scala_proto_toolchain-compiler"></a>compiler | The compiler to use to generate Scala form proto sources | <a href="https://bazel.build/concepts/labels">Label</a> | required | |
7777
| <a id="scala_proto_toolchain-compiler_supports_workers"></a>compiler_supports_workers | - | Boolean | optional | `False` |
78+
| <a id="scala_proto_toolchain-protoc"></a>protoc | The protoc binary to use | <a href="https://bazel.build/concepts/labels">Label</a> | optional | `"@protobuf//:protoc"` |
7879

7980

docs/stateful.md

Lines changed: 0 additions & 20 deletions
This file was deleted.

0 commit comments

Comments
 (0)