Skip to content

Commit d5751fe

Browse files
authored
Change some defaults to ast mode (#1038)
1 parent 87b2f43 commit d5751fe

File tree

2 files changed

+13
-5
lines changed

2 files changed

+13
-5
lines changed

README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -290,9 +290,9 @@ The strict dependency tracker and unused dependency tracker need to track the us
290290
- `dependency_tracking_method = "high-level"` - This is the existing tracking method which has false positives and negatives but generally works reasonably well for `direct` dependency mode.
291291
- `dependency_tracking_method = "ast"` - This is a new tracking method which is being developed for `plus-one` and `transitive` dependency modes. It is still being developed and may have issues which need fixing. If you discover an issue, please submit a small repro of the problem.
292292
293-
Note we intend to eventually remove this flag and use `high-level` as the method for `direct` dependency mode, and `ast` as the method for `plus-one` and `transitive` dependency modes.
293+
By default, `plus-one` and `transitive` dependency modes will use the `ast` dependency tracking method, while `direct` mode will use the `high-level` dependency tracking method.
294294
295-
In the meantime, if you are using `plus-one` or `transitive` dependency modes, you can use `ast` dependency tracking mode and see how well it works for you.
295+
Note we intend to eventually remove this flag and make the defaults non-configurable.
296296
297297
### [Experimental] Turning on strict_deps_mode/unused_dependency_checker_mode
298298

scala/scala_toolchain.bzl

+11-3
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,14 @@ def _compute_strict_deps_mode(input_strict_deps_mode, dependency_mode):
1313
return "off"
1414
return input_strict_deps_mode
1515

16-
def _compute_dependency_tracking_method(input_dependency_tracking_method):
16+
def _compute_dependency_tracking_method(
17+
dependency_mode,
18+
input_dependency_tracking_method):
1719
if input_dependency_tracking_method == "default":
18-
return "high-level"
20+
if dependency_mode == "direct":
21+
return "high-level"
22+
else:
23+
return "ast"
1924
return input_dependency_tracking_method
2025

2126
def _scala_toolchain_impl(ctx):
@@ -26,7 +31,10 @@ def _scala_toolchain_impl(ctx):
2631
)
2732

2833
unused_dependency_checker_mode = ctx.attr.unused_dependency_checker_mode
29-
dependency_tracking_method = _compute_dependency_tracking_method(ctx.attr.dependency_tracking_method)
34+
dependency_tracking_method = _compute_dependency_tracking_method(
35+
dependency_mode,
36+
ctx.attr.dependency_tracking_method,
37+
)
3038

3139
# Final quality checks to possibly detect buggy code above
3240
if dependency_mode not in ("direct", "plus-one", "transitive"):

0 commit comments

Comments
 (0)