Skip to content

Commit 74c7d92

Browse files
authored
Merge pull request #2 from OpenAPITools/bazel-1.0-compat
chore: Upgrade collect_jars to be bazel 1.0 compatible
2 parents 5c69b80 + 69d5bcf commit 74c7d92

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

internal/openapi_generator.bzl

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ def _impl(ctx):
9191
declared_dir,
9292
]))
9393

94+
# taken from rules_scala
9495
def _collect_jars(targets):
9596
"""Compute the runtime and compile-time dependencies from the given targets""" # noqa
9697
compile_jars = depset()
@@ -104,11 +105,17 @@ def _collect_jars(targets):
104105
runtime_jars = depset(transitive = [runtime_jars, target.scala.transitive_runtime_deps])
105106
runtime_jars = depset(transitive = [runtime_jars, target.scala.transitive_runtime_exports])
106107
found = True
107-
if hasattr(target, "java"):
108-
compile_jars = depset(transitive = [compile_jars, target.java.transitive_deps])
109-
runtime_jars = depset(transitive = [runtime_jars, target.java.transitive_runtime_deps])
108+
if hasattr(target, "JavaInfo"):
109+
# see JavaSkylarkApiProvider.java,
110+
# this is just the compile-time deps
111+
# this should be improved in bazel 0.1.5 to get outputs.ijar
112+
# compile_jars = depset(transitive = [compile_jars, [target.java.outputs.ijar]])
113+
compile_jars = depset(transitive = [compile_jars, target[JavaInfo].transitive_deps])
114+
runtime_jars = depset(transitive = [runtime_jars, target[JavaInfo].transitive_runtime_deps])
110115
found = True
111116
if not found:
117+
# support http_file pointed at a jar. http_jar uses ijar,
118+
# which breaks scala macros
112119
runtime_jars = depset(transitive = [runtime_jars, target.files])
113120
compile_jars = depset(transitive = [compile_jars, target.files])
114121

0 commit comments

Comments
 (0)