old_contents: load("@bazel_tools//tools/build_defs/repo:jvm.bzl", "jvm_maven_import_external")
  
  def _jar_jar_impl(ctx):
      ctx.action(
          inputs = [ctx.file.rules, ctx.file.input_jar],
          outputs = [ctx.outputs.jar],
          executable = ctx.executable.jarjar_runner,
          progress_message = "jarjar %s" % ctx.label,
          arguments = ["process", ctx.file.rules.path, ctx.file.input_jar.path, ctx.outputs.jar.path],
      )
  
      return [
          JavaInfo(
              output_jar = ctx.outputs.jar,
              compile_jar = ctx.outputs.jar,
          ),
          DefaultInfo(files = depset([ctx.outputs.jar])),
      ]
  
  jar_jar = rule(
      implementation = _jar_jar_impl,
      attrs = {
          "input_jar": attr.label(allow_files = True, single_file = True),
          "rules": attr.label(allow_files = True, single_file = True),
          "jarjar_runner": attr.label(
              executable = True,
              cfg = "host",
              default = Label("@io_bazel_rules_kotlin//third_party:jarjar_runner"),
          ),
      },
      outputs = {
          "jar": "%{name}.jar",
      },
      provides = [JavaInfo],
  )
  
new_contents: load("@bazel_tools//tools/build_defs/repo:jvm.bzl", "jvm_maven_import_external")
  
  def _jar_jar_impl(ctx):
      ctx.action(
          inputs = [ctx.file.rules, ctx.file.input_jar],
          outputs = [ctx.outputs.jar],
          executable = ctx.executable.jarjar_runner,
          progress_message = "jarjar %s" % ctx.label,
          arguments = ["process", ctx.file.rules.path, ctx.file.input_jar.path, ctx.outputs.jar.path],
      )
  
      return [
          JavaInfo(
              output_jar = ctx.outputs.jar,
              compile_jar = ctx.outputs.jar,
          ),
          DefaultInfo(files = depset([ctx.outputs.jar])),
      ]
  
  jar_jar = rule(
      implementation = _jar_jar_impl,
      attrs = {
          "input_jar": attr.label(allow_single_file = True),
          "rules": attr.label(allow_single_file = True),
          "jarjar_runner": attr.label(
              executable = True,
              cfg = "host",
              default = Label("@io_bazel_rules_kotlin//third_party:jarjar_runner"),
          ),
      },
      outputs = {
          "jar": "%{name}.jar",
      },
      provides = [JavaInfo],
  )
  
subject: Use the proper allow_single_file instead of the obsolete dual-parameter option. Fixes #10.