js.bzl: Avoid using deprecated depset union
Change-Id: Iea5d80055e9d9db7bd508f52dee181014268f28e
diff --git a/tools/js.bzl b/tools/js.bzl
index 94c11e1..daafe16 100644
--- a/tools/js.bzl
+++ b/tools/js.bzl
@@ -131,20 +131,20 @@
)
def _bower_component_impl(ctx):
- transitive_zipfiles = depset([ctx.file.zipfile])
- for d in ctx.attr.deps:
- transitive_zipfiles += d.transitive_zipfiles
+ transitive_zipfiles = depset(
+ direct = [ctx.file.zipfile],
+ transitive = [d.transitive_zipfiles for d in ctx.attr.deps],
+ )
- transitive_licenses = depset()
- if ctx.file.license:
- transitive_licenses += depset([ctx.file.license])
+ transitive_licenses = depset(
+ direct = [ctx.file.license],
+ transitive = [d.transitive_licenses for d in ctx.attr.deps],
+ )
- for d in ctx.attr.deps:
- transitive_licenses += d.transitive_licenses
-
- transitive_versions = depset(ctx.files.version_json)
- for d in ctx.attr.deps:
- transitive_versions += d.transitive_versions
+ transitive_versions = depset(
+ direct = ctx.files.version_json,
+ transitive = [d.transitive_versions for d in ctx.attr.deps],
+ )
return struct(
transitive_licenses = transitive_licenses,
@@ -183,12 +183,12 @@
mnemonic = "GenBowerZip",
)
- licenses = depset()
+ licenses = []
if ctx.file.license:
- licenses += depset([ctx.file.license])
+ licenses.append(ctx.file.license)
return struct(
- transitive_licenses = licenses,
+ transitive_licenses = depset(licenses),
transitive_versions = depset(),
transitive_zipfiles = list([ctx.outputs.zip]),
)
@@ -233,15 +233,16 @@
"""A bunch of bower components zipped up."""
zips = depset()
for d in ctx.attr.deps:
- zips += d.transitive_zipfiles
+ files = d.transitive_zipfiles
- versions = depset()
- for d in ctx.attr.deps:
- versions += d.transitive_versions
+ # TODO(davido): Make sure the field always contains a depset
+ if type(files) == "list":
+ files = depset(files)
+ zips = depset(transitive = [zips, files])
- licenses = depset()
- for d in ctx.attr.deps:
- licenses += d.transitive_versions
+ versions = depset(transitive = [d.transitive_versions for d in ctx.attr.deps])
+
+ licenses = depset(transitive = [d.transitive_versions for d in ctx.attr.deps])
out_zip = ctx.outputs.zip
out_versions = ctx.outputs.version_json
@@ -303,7 +304,7 @@
else:
bundled = ctx.outputs.html
destdir = ctx.outputs.html.path + ".dir"
- zips = [z for d in ctx.attr.deps for z in d.transitive_zipfiles]
+ zips = [z for d in ctx.attr.deps for z in d.transitive_zipfiles.to_list()]
hermetic_npm_binary = " ".join([
"python",