Skip to content

Commit 3b92fcc

Browse files
author
Jaden Peterson
committed
Don't include "phantom inputs" in singlejar actions
This shouldn't be necessary, now that we're using validation actions.
1 parent 6235cbf commit 3b92fcc

File tree

7 files changed

+9
-18
lines changed

7 files changed

+9
-18
lines changed

rules/common/private/utils.bzl

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,6 @@ def action_singlejar(
162162
ctx,
163163
inputs,
164164
output,
165-
phantom_inputs = depset(),
166165
main_class = None,
167166
progress_message = None,
168167
resources = {},
@@ -174,8 +173,6 @@ def action_singlejar(
174173

175174
if type(inputs) == "list":
176175
inputs = depset(inputs)
177-
if type(phantom_inputs) == "list":
178-
phantom_inputs = depset(phantom_inputs)
179176

180177
args = ctx.actions.args()
181178
args.add("--exclude_build_data")
@@ -190,7 +187,7 @@ def action_singlejar(
190187
args.set_param_file_format("multiline")
191188
args.use_param_file("@%s", use_always = True)
192189

193-
all_inputs = depset(resources.values(), transitive = [inputs, phantom_inputs])
190+
all_inputs = depset(resources.values(), transitive = [inputs])
194191

195192
ctx.actions.run(
196193
arguments = [args],

rules/private/phases/phase_binary_launcher.bzl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def phase_binary_launcher(ctx, g):
3030

3131
g.out.providers.append(DefaultInfo(
3232
executable = ctx.outputs.bin,
33-
files = depset([ctx.outputs.bin, ctx.outputs.jar]),
33+
files = depset([ctx.outputs.bin, ctx.outputs.jar] + g.semanticdb.outputs),
3434
runfiles = ctx.runfiles(
3535
files = inputs + files,
3636
transitive_files = depset(

rules/private/phases/phase_library_defaultinfo.bzl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@
66

77
def phase_library_defaultinfo(ctx, g):
88
g.out.providers.append(DefaultInfo(
9-
files = depset([ctx.outputs.jar]),
9+
files = depset([ctx.outputs.jar] + g.semanticdb.outputs),
1010
))

rules/private/phases/phase_singlejar.bzl

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,9 @@ def phase_singlejar(ctx, g):
2121
# cause the build to fail, cleanly, if any declared outputs are
2222
# missing from previous phases.
2323
inputs = [f for f in ctx.files.resource_jars if f.extension.lower() in ["jar"]]
24-
phantom_inputs = []
2524
for v in [getattr(g, k) for k in dir(g) if k not in ["to_json", "to_proto"]]:
2625
if hasattr(v, "jar"):
2726
jar = getattr(v, "jar")
2827
inputs.append(jar)
29-
if hasattr(v, "outputs"):
30-
phantom_inputs.extend(getattr(v, "outputs"))
3128

32-
_action_singlejar(ctx, inputs, ctx.outputs.jar, phantom_inputs)
29+
_action_singlejar(ctx, inputs, ctx.outputs.jar)

rules/private/phases/phase_test_launcher.bzl

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,7 @@ load(
22
"@rules_scala_annex//rules/private:coverage_replacements_provider.bzl",
33
_coverage_replacements_provider = "coverage_replacements_provider",
44
)
5-
load(
6-
"//rules/common:private/utils.bzl",
7-
_action_singlejar = "action_singlejar",
8-
_collect = "collect",
9-
_write_launcher = "write_launcher",
10-
)
5+
load("//rules/common:private/utils.bzl", _collect = "collect", _write_launcher = "write_launcher")
116

127
#
138
# PHASE: test_launcher

rules/scala.bzl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ load(
3131
_phase_noop = "phase_noop",
3232
_phase_outputgroupinfo = "phase_outputgroupinfo",
3333
_phase_resources = "phase_resources",
34+
_phase_semanticdb = "phase_semanticdb",
3435
_phase_singlejar = "phase_singlejar",
3536
_phase_test_launcher = "phase_test_launcher",
3637
_run_phases = "run_phases",
@@ -214,6 +215,7 @@ def _scala_library_implementation(ctx):
214215
("resources", _phase_resources),
215216
("classpaths", _phase_classpaths),
216217
("javainfo", _phase_javainfo),
218+
("semanticdb", _phase_semanticdb),
217219
("compile", _phase_noop),
218220
("singlejar", _phase_singlejar),
219221
("coverage", _phase_coverage_jacoco),
@@ -228,6 +230,7 @@ def _scala_binary_implementation(ctx):
228230
("resources", _phase_resources),
229231
("classpaths", _phase_classpaths),
230232
("javainfo", _phase_javainfo),
233+
("semanticdb", _phase_semanticdb),
231234
("compile", _phase_noop),
232235
("singlejar", _phase_singlejar),
233236
("coverage", _phase_coverage_jacoco),
@@ -243,6 +246,7 @@ def _scala_test_implementation(ctx):
243246
("resources", _phase_resources),
244247
("classpaths", _phase_classpaths),
245248
("javainfo", _phase_javainfo),
249+
("semanticdb", _phase_semanticdb),
246250
("compile", _phase_noop),
247251
("singlejar", _phase_singlejar),
248252
("coverage", _phase_coverage_jacoco),

rules/scala/private/provider.bzl

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ load(
99
load(
1010
"//rules/private:phases.bzl",
1111
_phase_bootstrap_compile = "phase_bootstrap_compile",
12-
_phase_semanticdb = "phase_semanticdb",
1312
_phase_zinc_compile = "phase_zinc_compile",
1413
_phase_zinc_depscheck = "phase_zinc_depscheck",
1514
)
@@ -60,7 +59,6 @@ def configure_zinc_scala_implementation(ctx):
6059
_ScalaRulePhase(
6160
phases = [
6261
("=", "compile", "compile", _phase_zinc_compile),
63-
("-", "compile", "semanticdb", _phase_semanticdb),
6462
("+", "compile", "depscheck", _phase_zinc_depscheck),
6563
],
6664
),

0 commit comments

Comments
 (0)