Rename set to depset

The `set` constructor is obsolete and will be removed in the future.

PiperOrigin-RevId: 163331591
diff --git a/tools/build_defs/apple/apple_genrule.bzl b/tools/build_defs/apple/apple_genrule.bzl
index 8a0b067..ebb02f8 100644
--- a/tools/build_defs/apple/apple_genrule.bzl
+++ b/tools/build_defs/apple/apple_genrule.bzl
@@ -28,10 +28,10 @@
 
 
 def _apple_genrule(ctx):
-  resolved_srcs = set()
+  resolved_srcs = depset()
   if not ctx.outputs.outs:
     fail("apple_genrule must have one or more outputs", attr="outs")
-  files_to_build = set(ctx.outputs.outs)
+  files_to_build = depset(ctx.outputs.outs)
 
   if ctx.attr.executable and len(files_to_build) > 1:
     fail("if genrules produce executables, they are allowed only one output. "
@@ -48,7 +48,7 @@
       command=ctx.attr.cmd,
       attribute="cmd",
       expand_locations=True,
-      make_variables=_compute_make_variables(set(resolved_srcs), files_to_build),
+      make_variables=_compute_make_variables(depset(resolved_srcs), files_to_build),
       tools=ctx.attr.tools,
       label_dict=label_dict,
       execution_requirements=DARWIN_EXECUTION_REQUIREMENTS)
diff --git a/tools/build_defs/apple/swift.bzl b/tools/build_defs/apple/swift.bzl
index ec484ce..656496e 100644
--- a/tools/build_defs/apple/swift.bzl
+++ b/tools/build_defs/apple/swift.bzl
@@ -26,13 +26,13 @@
      "label_scoped_path")
 
 def _parent_dirs(dirs):
-  """Returns a set of parent directories for each directory in dirs."""
-  return set([f.rpartition("/")[0] for f in dirs])
+  """Returns a depset of parent directories for each directory in dirs."""
+  return depset([f.rpartition("/")[0] for f in dirs])
 
 
 def _framework_names(dirs):
   """Returns the framework name for each directory in dir."""
-  return set([f.rpartition("/")[2].partition(".")[0] for f in dirs])
+  return depset([f.rpartition("/")[2].partition(".")[0] for f in dirs])
 
 
 def _intersperse(separator, iterable):
@@ -122,7 +122,7 @@
 
 def _swift_linkopts(ctx):
   """Returns additional linker arguments for the given rule context."""
-  return set(["-L" + _swift_lib_dir(ctx)])
+  return depset(["-L" + _swift_lib_dir(ctx)])
 
 
 def _swift_xcrun_args(ctx):
@@ -193,12 +193,12 @@
   for swift in swift_providers:
     dep_modules += swift.transitive_modules
 
-  objc_files = set()
+  objc_files = depset()
   for objc in objc_providers:
     objc_files += objc.header
     objc_files += objc.module_map
-    objc_files += set(objc.static_framework_file)
-    objc_files += set(objc.dynamic_framework_file)
+    objc_files += depset(objc.static_framework_file)
+    objc_files += depset(objc.dynamic_framework_file)
 
   return ctx.files.srcs + dep_modules + list(objc_files)
 
@@ -234,7 +234,7 @@
   module_name = ctx.attr.module_name or swift_module_name(ctx.label)
 
   # A list of paths to pass with -F flag.
-  framework_dirs = set([
+  framework_dirs = depset([
       apple_toolchain.platform_developer_framework_dir(apple_fragment)])
 
   # Collect transitive dependecies.
@@ -248,10 +248,10 @@
     dep_modules += swift.transitive_modules
     swiftc_defines += swift.transitive_defines
 
-  objc_includes = set()     # Everything that needs to be included with -I
-  objc_module_maps = set()  # Module maps for dependent targets
-  objc_defines = set()
-  static_frameworks = set()
+  objc_includes = depset()     # Everything that needs to be included with -I
+  objc_module_maps = depset()  # Module maps for dependent targets
+  objc_defines = depset()
+  static_frameworks = depset()
   for objc in objc_providers:
     objc_includes += objc.include
     objc_module_maps += objc.module_map
@@ -268,10 +268,10 @@
   srcs_args = [f.path for f in ctx.files.srcs]
 
   # Include each swift module's parent directory for imports to work.
-  include_dirs = set([x.dirname for x in dep_modules])
+  include_dirs = depset([x.dirname for x in dep_modules])
 
   # Include the genfiles root so full-path imports can work for generated protos.
-  include_dirs += set([ctx.genfiles_dir.path])
+  include_dirs += depset([ctx.genfiles_dir.path])
 
   include_args = ["-I%s" % d for d in include_dirs + objc_includes]
   framework_args = ["-F%s" % x for x in framework_dirs]
@@ -451,11 +451,11 @@
   extra_linker_args = ["-Xlinker -add_ast_path -Xlinker " + output_module.path]
 
   objc_provider = apple_common.new_objc_provider(
-      library=set([output_lib] + dep_libs),
-      header=set([output_header]),
+      library=depset([output_lib] + dep_libs),
+      header=depset([output_header]),
       providers=objc_providers,
       linkopt=_swift_linkopts(ctx) + extra_linker_args,
-      link_inputs=set([output_module]),
+      link_inputs=depset([output_module]),
       uses_swift=True,)
 
   return struct(
@@ -464,7 +464,7 @@
           transitive_modules=[output_module] + dep_modules,
           transitive_defines=swiftc_defines),
       objc=objc_provider,
-      files=set([output_lib, output_module, output_header]))
+      files=depset([output_lib, output_module, output_header]))
 
 SWIFT_LIBRARY_ATTRS = {
     "srcs": attr.label_list(allow_files = [".swift"], allow_empty=False),
diff --git a/tools/build_defs/docker/build.bzl b/tools/build_defs/docker/build.bzl
index 719d5a6..f60ccbd 100644
--- a/tools/build_defs/docker/build.bzl
+++ b/tools/build_defs/docker/build.bzl
@@ -309,7 +309,7 @@
                [l["id"] for l in layers] +
                [l["layer"] for l in layers]))
   return struct(runfiles = runfiles,
-                files = set([ctx.outputs.layer]),
+                files = depset([ctx.outputs.layer]),
                 docker_layers = layers)
 
 
@@ -502,7 +502,7 @@
     if reserved in kwargs:
       fail("reserved for internal use by docker_build macro", attr=reserved)
   if "labels" in kwargs:
-    files = sorted(set([v[1:] for v in kwargs["labels"].values() if v[0] == "@"]))
+    files = sorted(depset([v[1:] for v in kwargs["labels"].values() if v[0] == "@"]))
     kwargs["label_files"] = files
     kwargs["label_file_strings"] = files
   if "entrypoint" in kwargs:
diff --git a/tools/build_defs/docker/bundle.bzl b/tools/build_defs/docker/bundle.bzl
index 94da3b0..fa11b12 100644
--- a/tools/build_defs/docker/bundle.bzl
+++ b/tools/build_defs/docker/bundle.bzl
@@ -63,7 +63,7 @@
                [l["layer"] for l in layers]))
 
   return struct(runfiles = runfiles,
-                files = set())
+                files = depset())
 
 
 docker_bundle_ = rule(
diff --git a/tools/build_rules/java_rules_skylark.bzl b/tools/build_rules/java_rules_skylark.bzl
index b37a857..4b12958 100644
--- a/tools/build_rules/java_rules_skylark.bzl
+++ b/tools/build_rules/java_rules_skylark.bzl
@@ -22,8 +22,8 @@
 def java_library_impl(ctx):
   javac_options = ctx.fragments.java.default_javac_flags
   class_jar = ctx.outputs.class_jar
-  compile_time_jars = set(order="link")
-  runtime_jars = set(order="link")
+  compile_time_jars = depset(order="topological")
+  runtime_jars = depset(order="topological")
   for dep in ctx.attr.deps:
     compile_time_jars += dep.compile_time_jars
     runtime_jars += dep.runtime_jars
@@ -42,7 +42,7 @@
   sources_param_file = ctx.new_file(ctx.bin_dir, class_jar, "-2.params")
   ctx.file_action(
       output = sources_param_file,
-      content = cmd_helper.join_paths("\n", set(sources)),
+      content = cmd_helper.join_paths("\n", depset(sources)),
       executable = False)
 
   # Cleaning build output directory
@@ -79,7 +79,7 @@
 
   runfiles = ctx.runfiles(collect_data = True)
 
-  return struct(files = set([class_jar]),
+  return struct(files = depset([class_jar]),
                 compile_time_jars = compile_time_jars + [class_jar],
                 runtime_jars = runtime_jars + [class_jar],
                 runfiles = runfiles)
@@ -158,7 +158,7 @@
     executable = True)
 
   runfiles = ctx.runfiles(files = [deploy_jar, executable] + ctx.files._jdk, collect_data = True)
-  files_to_build = set([deploy_jar, manifest, executable])
+  files_to_build = depset([deploy_jar, manifest, executable])
   files_to_build += library_result.files
 
   return struct(files = files_to_build, runfiles = runfiles)
@@ -167,8 +167,8 @@
 def java_import_impl(ctx):
   # TODO(bazel-team): Why do we need to filter here? The attribute
   # already says only jars are allowed.
-  jars = set(jar_filetype.filter(ctx.files.jars))
-  neverlink_jars = set(jar_filetype.filter(ctx.files.neverlink_jars))
+  jars = depset(jar_filetype.filter(ctx.files.jars))
+  neverlink_jars = depset(jar_filetype.filter(ctx.files.neverlink_jars))
   runfiles = ctx.runfiles(collect_data = True)
   return struct(files = jars,
                 compile_time_jars = jars + neverlink_jars,
diff --git a/tools/ide/intellij_info_impl.bzl b/tools/ide/intellij_info_impl.bzl
index 6ec17f7..15b5f58 100644
--- a/tools/ide/intellij_info_impl.bzl
+++ b/tools/ide/intellij_info_impl.bzl
@@ -123,7 +123,7 @@
   """Builds a list of unique ArtifactLocation protos."""
   # Sets can contain tuples, but cannot contain structs.
   # Use set of tuples to unquify source directories.
-  source_directory_tuples = set([source_directory_tuple(f) for f in resources])
+  source_directory_tuples = depset([source_directory_tuple(f) for f in resources])
   return [to_artifact_location(
       exec_path,
       root_path_fragment,
@@ -204,7 +204,7 @@
 
 def targets_to_labels(targets):
   """Returns a set of label strings for the given targets."""
-  return set([str(target.label) for target in targets])
+  return depset([str(target.label) for target in targets])
 
 def list_omit_none(value):
   """Returns a list of the value, or the empty list if None."""
@@ -255,7 +255,7 @@
 def build_py_ide_info(target, ctx):
   """Build PyIdeInfo."""
   if not hasattr(target, "py"):
-    return (None, set())
+    return (None, depset())
 
   sources = sources_from_target(ctx)
   transitive_sources = target.py.transitive_sources
@@ -268,7 +268,7 @@
 def build_c_ide_info(target, ctx):
   """Build CIdeInfo."""
   if not hasattr(target, "cc"):
-    return (None, set())
+    return (None, depset())
 
   sources = artifacts_from_target_list_attr(ctx, "srcs")
   headers = artifacts_from_target_list_attr(ctx, "hdrs")
@@ -305,7 +305,7 @@
   """Build CToolchainIdeInfo."""
 
   if ctx.rule.kind != "cc_toolchain":
-    return (None, set())
+    return (None, depset())
 
   # This should exist because we requested it in our aspect definition.
   cc_fragment = ctx.fragments.cpp
@@ -323,7 +323,7 @@
       built_in_include_directory = [str(d)
                                     for d in cc_fragment.built_in_include_directories],
   )
-  return (c_toolchain_ide_info, set())
+  return (c_toolchain_ide_info, depset())
 
 def get_java_provider(target):
   if hasattr(target, "proto_java"):
@@ -345,31 +345,31 @@
   """Build JavaIdeInfo."""
   java = get_java_provider(target)
   if not java:
-    return (None, set(), set(), set())
+    return (None, depset(), depset(), depset())
 
   java_semantics = semantics.java if hasattr(semantics, "java") else None
   if java_semantics and java_semantics.skip_target(target, ctx):
-    return (None, set(), set(), set())
+    return (None, depset(), depset(), depset())
 
-  ide_info_files = set()
+  ide_info_files = depset()
   sources = sources_from_target(ctx)
   java_jars = get_java_jars(java.outputs)
   jars = [library_artifact(output) for output in java_jars]
   class_jars = [output.class_jar for output in java_jars if output and output.class_jar]
   output_jars = [jar for output in java_jars for jar in jars_from_output(output)]
-  intellij_resolve_files = set(output_jars)
-  intellij_compile_files = set(class_jars)
+  intellij_resolve_files = depset(output_jars)
+  intellij_compile_files = depset(class_jars)
 
   gen_jars = []
   if (hasattr(java, "annotation_processing") and
       java.annotation_processing and
       java.annotation_processing.enabled):
     gen_jars = [annotation_processing_jars(java.annotation_processing)]
-    intellij_resolve_files = intellij_resolve_files | set([
+    intellij_resolve_files = intellij_resolve_files | depset([
         jar for jar in [java.annotation_processing.class_jar,
                         java.annotation_processing.source_jar]
         if jar != None and not jar.is_source])
-    intellij_compile_files = intellij_compile_files | set([
+    intellij_compile_files = intellij_compile_files | depset([
         jar for jar in [java.annotation_processing.class_jar]
         if jar != None and not jar.is_source])
 
@@ -385,7 +385,7 @@
   package_manifest = None
   if java_sources:
     package_manifest = build_java_package_manifest(ctx, target, java_sources, ".java-manifest")
-    ide_info_files = ide_info_files | set([package_manifest])
+    ide_info_files = ide_info_files | depset([package_manifest])
 
   filtered_gen_jar = None
   if java_sources and (gen_java_sources or srcjars):
@@ -475,7 +475,7 @@
       jar=artifact_location(filtered_jar),
       source_jar=artifact_location(filtered_source_jar),
   )
-  intellij_resolve_files = set([filtered_jar, filtered_source_jar])
+  intellij_resolve_files = depset([filtered_jar, filtered_source_jar])
   return output_jar, intellij_resolve_files
 
 def divide_java_sources(ctx):
@@ -501,7 +501,7 @@
 def build_android_ide_info(target, ctx, semantics):
   """Build AndroidIdeInfo."""
   if not hasattr(target, "android"):
-    return (None, set())
+    return (None, depset())
 
   android_semantics = semantics.android if hasattr(semantics, "android") else None
   extra_ide_info = android_semantics.extra_ide_info(target, ctx) if android_semantics else {}
@@ -520,10 +520,10 @@
       resource_jar = library_artifact(android.resource_jar),
       **extra_ide_info
   )
-  intellij_resolve_files = set(jars_from_output(android.idl.output))
+  intellij_resolve_files = depset(jars_from_output(android.idl.output))
 
   if android.manifest and not android.manifest.is_source:
-    intellij_resolve_files = intellij_resolve_files | set([android.manifest])
+    intellij_resolve_files = intellij_resolve_files | depset([android.manifest])
 
   return (android_ide_info, intellij_resolve_files)
 
@@ -591,13 +591,13 @@
     if ctx.rule.kind == "android_library":
       if not hasattr(rule_attrs, "srcs") or not ctx.rule.attr.srcs:
         export_deps = export_deps + compiletime_deps
-  export_deps = list(set(export_deps))
+  export_deps = list(depset(export_deps))
 
   # runtime_deps
   runtime_dep_targets = collect_targets_from_attrs(
       rule_attrs, semantics_extra_deps(RUNTIME_DEPS, semantics, "extra_runtime_deps"))
   runtime_deps = make_deps(runtime_dep_targets, RUNTIME)
-  all_deps = list(set(compiletime_deps + runtime_deps))
+  all_deps = list(depset(compiletime_deps + runtime_deps))
 
   # extra prerequisites
   extra_prerequisite_targets = collect_targets_from_attrs(
@@ -605,8 +605,8 @@
 
   # Roll up files from my prerequisites
   prerequisites = direct_dep_targets + runtime_dep_targets + extra_prerequisite_targets
-  intellij_info_text = set()
-  intellij_resolve_files = set()
+  intellij_info_text = depset()
+  intellij_resolve_files = depset()
   intellij_compile_files = target.output_group("files_to_compile_INTERNAL_")
   for dep in prerequisites:
     intellij_info_text = intellij_info_text | dep.intellij_info.intellij_info_text
@@ -678,7 +678,7 @@
   # Output the ide information file.
   output = ctx.new_file(file_name)
   ctx.file_action(output, info.to_proto())
-  intellij_info_text = intellij_info_text | set([output])
+  intellij_info_text = intellij_info_text | depset([output])
 
   # Return providers.
   return struct_omit_none(